两台主机通讯时,没有B主机的子网掩码,A主机咋判断B主机和自己在不在一个网络呢( 二 )


主机B ping主机A,数据包走网关,发到主机A去,主机A收到了,但是根据数据包的IP地址和本机的掩码得出的网络地址是:192.0.0.0,跟自己的:10.0.0.0 不一样,丢弃,die~
以上例子均在思科模拟器上做过测试,如有错漏,欢迎指出。

■网友
谢邀,子网掩码是给自己用的。A只需要依据目标IP和自己的子网掩码判断对方是不是跟自己在一个子网,至于B如何设置,A并不关心。所以如果B或者A的掩码配置错误,有可能导致A一边能向另一边发消息,反过来却不行的现象。
■网友
假设1:掩码a==掩码b。当且仅当地址a\u0026amp;掩码a==地址b\u0026amp;掩码b(即地址b\u0026amp;掩码a)时,可证明地址a与地址b在同一子网。假设2:掩码a!=掩码b。不用判断了,地址a与地址b一定不在同一子网。因此,直接按照假设1进行求证即可。
■网友
A将A的掩码和B的IP进行计算得出B的网络号,A拿自己的网络号和这个计算出来的网络号比较,一样的话,A就认为B在同一网段,否则就不是同一网段。所以,A为什么要知道B的子网掩码?====================================补充来自评论区的一个例子:同一局域网内,192.168.1.2/24和192.168.1.3/16 之间是可以通讯的。两台主机通讯时,没有B主机的子网掩码,A主机咋判断B主机和自己在不在一个网络呢


■网友
A:192.168.1.2/24B:192.168.1.66/26A和B直接到路由器的不同接口。A会认为B跟它在同一个网段,会发arp广播,路由器丢弃。B认为A不在同一个网段,会发给网关,正常到达A。


推荐阅读