|cisco|MAC地址,IP地址,ARP协议

|cisco|MAC地址,IP地址,ARP协议

|cisco|MAC地址,IP地址,ARP协议
|cisco|MAC地址,IP地址,ARP协议|cisco|MAC地址,IP地址,ARP协议
让左边的计算机给右边的计算发送一个数据包
|cisco|MAC地址,IP地址,ARP协议

下一跳ip地址是一个单播地址,ARP进程在ARP表中查找它

下一跳ip地址不在ARP表中(找不到相应的MAC地址),
ARP进程尝试为该ip地址发送1个ARP请求并缓存当前数据包

|cisco|MAC地址,IP地址,ARP协议

ARP请求

|cisco|MAC地址,IP地址,ARP协议|cisco|MAC地址,IP地址,ARP协议

ARP请求细节
|cisco|MAC地址,IP地址,ARP协议ARP的数据打完包要封装为以太网的帧
|cisco|MAC地址,IP地址,ARP协议|cisco|MAC地址,IP地址,ARP协议
右边主机经过解析,
发现是ARP广播请求,
把带来的信息(发送请求的主机的ip地址&MAC地址对应关系)更新到自己的ARP表里
|cisco|MAC地址,IP地址,ARP协议
发现是ARP广播请求,询问自己的mac地址,
于是构建ARP的单播响应
|cisco|MAC地址,IP地址,ARP协议
右边计算机构建的单播的响应
|cisco|MAC地址,IP地址,ARP协议
ARP的单播响应就发送回去了
|cisco|MAC地址,IP地址,ARP协议
ARP进程从缓冲区中取出ARP的信息来更新自己的ARP表,并发送等待该ARP响应的数据包
|cisco|MAC地址,IP地址,ARP协议我们想要发的ICMP数据报终于发出来啦
|cisco|MAC地址,IP地址,ARP协议
收到后,再给对方一个ICMP的响应
|cisco|MAC地址,IP地址,ARP协议
|cisco|MAC地址,IP地址,ARP协议
我们再给右边发一个ICMP数据包,直接就发送了一个ICMP数据包了
不用再像第一次一样通过ARP的广播请求,去询问ip地址和mac地址的对应关系

通过命令把ARP的高速缓存表清理
|cisco|MAC地址,IP地址,ARP协议
再次发送ICMP的数据包,又再次调用ARP的广播请求
|cisco|MAC地址,IP地址,ARP协议