计网作业之试验任务五- Ping的背后,交换机中ICMP和arp的数据交换方式

1、配置网络架构

2、对三台pc配置ip和mac(后者是为了方便观察情况)

尝试ping192.168.86.2,发现第一次不是ICMP协议,而是arp,并且使用了广播!

3、下面是第一次arp广播帧格式,我们可以在目的IP地址中看到,是全1的,已知这是广播信道,而arp协议帧数据保存了目的IP,和全0的目标MAC地址,这个一般用来表示未被分配或未知设备标识。在ARP请求报文中,目的MAC字段填充全0表示待解析的地址(因为此时目标MAC尚未知晓而,全1的mac是广播)。则,猜测应该只有IP为192.168.86.2的pc才会回复。

4、观察event List发现,ARP记录项,确实是广播,且最终只有PC2回应,印证了以上的猜想

在pc2的回复中,包含了它的mac地址!

5、同时观察两次的arp数据帧可知,除了数据部分,只有一个名为OPCODE的项发生了数值变动,去时为1,归时为2,怀疑是工作模式控制码
根据互联网搜索到的消息,确实如此,其中硬件地址长度为6,协议长度为4,猜测分别为mac地址长度(48位)和IP地址长度(32位)

pc1和pc2的arp表中,保存了彼此的信息

并且通过arp协议的通信,交换机也保存了通信双方的mac与端口的对应关系(交换机不保存IP)

5、于是,在ICMP帧中有了准确的mac地址并且交换机可以进行mac地址和端口位置的精确转换的情况下,就开始了单播的信息传递作业。

而与交换机不同的是,集线器就只会转发,如果不是目标pc则会丢掉!

结论,在交换机中,在第一次传输时,使用了广播的arp寻址对应ip的mac地址,之后在arp表和交换机交换表的帮助下,进行单播,但集线器就干不了这个,只是一味的广播。
但如果要探索跨网段的arp协议产生的作用方法,则可能要留到以后在进行实验。

浙公网安备 33010602011771号