问题一:
服务器A:192.168.26.129/24,MAC:00:0c:29:0c:22:10 服务器B:192.168.26.3/27,MAC:00:0c:29:51:f1:7b 网关:192.168.26.2/24,MAC:00:50:56:e7:2f:88
现在服务器B去ping服务器A: 过程:(抓包分析) 1.服务器B通过ARP广播查询默认网关192.168.26.2的MAC地址 原因:B根据自己的子网掩码,计算出A属于不同子网,跨子网通信需要默认网关的转发。而要和默认网关通信,就需要获得其MAC地址 2.默认网关192.168.26.2向B回复了自己的MAC地址 原因:MAC 地址的前 3 个字节表示厂商。而 00:50:56 和 00:0c:29 都被分配给Vmware公司 3.B发出ping包,指定Destination IP为A,即192.168.26.129。但Destination MAC却是默认网关的 00:50:56:e7:2f:88 4.B收到了A发出的ARP广播,这个广播查询的是B的MAC地址 在 A 看来,B 属于相同子网,同子网通信无需默认网关的参与,只要通过 ARP获得对方MAC地址就行了。这个包也表明默认网关成功地把B发出的ping请求转发给A了,否则A不会无缘无故尝试和B通信。 5.B回复了A的ARP请求,把自己的MAC地址告诉A B在执行ARP回复时并不考虑子网。虽然ARP请求来自其他子网的IP,但也照样回复。 6.B终于收到了A的ping回复 从MAC地址00:0c:29:0c:22:10可以看出,这个包是从A直接过来的,而不是通过默认网关的转发 7,8,9,10:都是重复的ping请求和ping回复 因为A和B都已经知道对方的联系方式,所以就没必要再发ARP了 总结:B先把ping请求交给默认网关,默认网关再转发给A。而A收到请求后直接把ping回复给B
|