上文我们做了单臂路由的实验,我们提出来两个问题: 1。PC1pingPC2,在交换机和路由器之间抓包,会抓到哪些包? 2。数据包都带哪些vlan标签?为什么? 一、拓扑图 二、PC1PingPC2结果和抓包 此处为何会有一个超时? 解答问题时刻: 解答问题前先要知道一个知识点,封装是从应用层传输层网络层物理层,所以是最后封装mac地址,那解封装正好相反,第一步解封装就是mac地址,看到mac地址是自己的才会继续解封装。 1。1处的arp广播是因为,PC1PingPC2封装包的流程,因为192。168。20。253和192。168。10。253不是一个网段,需要网关来转发,所以要想封装数据包,就要有网关的mac地址,所以要通过1处arp广播来获取网关的mac地址。 2。拿到网关mac地址以后,PC1在封装数据包,源IP地址是192。168。10。253,目的IP是192。168。20。253,源mac地址是PC1的mac地址,目的mac地址是G001。10子接口的mac地址(见下图)。 3。网关拿到这个数据包后解封装,发现目的mac地址是发现是给自己的,再解封发现目的IP是192。168。20。253,就要检索路由表,发现直连路由192。168。20。024Direct00D192。168。20。254GigabitEthernet001。20,路由器从G001。20子接口发出2处arp广播,查找192。168。20。253的mac地址,拿到PC2的mac地址后,重新封装,源IP地址是192。168。10。253,目的IP地址是192。168。20。253,源mac地址是G001。20子接口mac地址,目的mac地址是PC2的mac地址。 4。PC2拿到包以后解封装,发现mac地址是自己的,网络层的目的ip也是自己的,继续解封,由于ping指令数据icmp协议,所以上层协议号是1,见下图: 至此,PC1的包已经到达PC2 5。PC2回包,已经根据来包,知道了网关192。168。20。254的mac地址,所以,源IP是192。168。20。253,目的IP是192。168。10。253,源mac是PC2的mac地址,目的mac地址是20。254的网关,所以回包同理,区别在于不用再发arp广播。 至此问题1和问题2的答案也就明白了,抓包有arp包和icmp包。去包在SW1R1之间,vlan标签是10,回包SW1R1之间,vlan标签是20,以上还有一个小问题:一个超时的包也是因为arp广播的问题。