第一个:子网掩码不同是否可以通信

第一个:子网掩码不同是否可以通信

子网掩码不同能否通信?(可以)

两台电脑PC1和PC2的网络配置如下,PC2的子网掩码本应该是255.255.255.0,被不小心配成了255.255.255.224,它们还能正常通信吗?

1、打开华为ensp模拟器,按照如图所示进行配置,配置完毕后,在三个抓包点进行抓包。

2、通过PC1 ping PC2,结果是通的,如下所示:

3、该操作产生的网络包,在三个点抓包结果如下:

抓包结果分析:

PC1-192.168.26.129 ping PC2-192.168.26.3,在抓包2,No.92记录,PC1根据自己的子网掩码,计算出PC2属于同一个子网,不需要跨子网通信不需要默认网关的转发,所以直接发了ARP请求PC2的mac地址的广播包,抓包点1和抓包点3都收到了这个广播。抓包点1、ip为192.168.26.2不是请求的192.168.26.3丢弃此包。抓包点3ip与请求ip一直,回复了此包加上了自己的mac地址。回复此包时PC2根据自己的子网掩码,计算出PC1属于不同子网,跨子网通信需要默认网关的转发,抓包3、No.90为PC2请求网关192.168.26.2的mac地址ARP广播包。PC1收到此广播包ip不一致丢弃。抓包1收到此arp请求,回复PC2 网关的mac地址。PC1pingPC2,ping包到达pc2,pc2的回报到网关,网关在到pc1。

PC2-192.168.26.3 ping PC1-192.168.26.129,ping包到达网关,网关到pc1,pc1到网关,网关到pc2。

结论:

1、根据自己的子网掩码计算目标ip与自己是不是同一个子网,跨子网通信需要默认网关的转发(本质是路由转发)。

(ping目标ip,先计算是不是同一个子网,如果是同一个子网,直接请求目的ip的mac地址,不在同一个子网,查看路由,看路由的下一跳是哪里,就ARP请求下一跳ip的mac地址,如果路由配置的下一跳是出接口不是ip地址,那么意思就是说他们是直连,直接ARP广播请求目的ip的mac地址。)

2、根据自己的子网掩码计算目标ip与自己是不是同一个子网,属于同一个子网,无需默认网关的参与。

后记:

当两个不同网段的设备需要进行相互访问的时候,数据都是交给网关的,这个数据会从网关发出去。打个比方,你们班是一个局域网,你们班的每一个人是一台电脑。你班的每个人需要到另一个班里去干一些事情,那就必须通过你教室的门口出去,你教室的门口就相当于是个网关。所以说,在网络上只要涉及到三层的数据转发,每个局域网都需要一个网关的,这个网关你可以理解成起到了个代理的作用,每个网段的网关只有一个,但是每个网段的iP就会有好多了。所以,每个网段的网关是相同的,ip一定不能重样,否则会ip冲突的。最重要的一点是:当某个网段的某个地址拿出来当网关用了,这个地址就不能再分配给其他设备用。

通常网关都为 路由器的地址,因为要靠路由和其他网段的ip通讯

相关推荐