想问下子网掩码是这么用的吗???懵圈了 - -
各位大佬提点下 在线等 O(∩_∩)O谢谢
判断是否同一网段要用自己的掩码和目的ip去与,再比较结果和自身的网络地址是否一致。对应pc7 192.168.12.1/255.255.248.0就是掩码21位,这样的子网号就是192.168.8.0,ip有效范围就是192.168.8.1~192.168.15.254,对方192.168.14.1在这个范围内,ping消息要判断目的ip是否是和本身ip在同一网络地址下,192.168.14.1&&255.255.248.0=192.168.8.0,所以认为是同一网段,直接发出arp请求,pc12会响应他的arp请求,pc7会得到pc12的mac地址,ping的request消息会发出,pc12收到后,会判断rquest消息里源ip192.168.12.1是否和自己在同一网段,192.168.12.1&&255.255.252.0=192.168.12.0,pc7的192.168.12.1在这个子网的ip范围内,所以它认为192.168.12.1~192.168.15.254都是同一网段的合法地址,所以会回pc7的ping的request请求,而且ttl不会减1.
反过来,192.168.14.1去ping192.168.12.1也是一样,都在同一网段,能ping通。
能ping通的原因是两个网络地址虽然不同,但可用的ip范围却有交叉重合的部分。
判断是否在同一网段要根据自己的掩码与目的ip来与来计算,子网号就是一个网络地址,每个网络地址下有对应的一个合法的ip段,在这个ip段的都是同一网段。不用发送到网关。
你这样写子网掩码相当于是做了子网划分,就类似于现在有两个子网掩码:255.255.255.0和255.255.125.0,后者明显是前者做了子网划分以后画出来的子网,然后你再这样来做测试,就是配置两个ip:192.168.1.2和192.168.1.253,子网掩码都用255.255.255.125,因为是做了子网划分,他们是属于不同子网了,那他们之间应该是没办法通信的。这时候你再创建一个ip,比如是192.168.1.3,掩码是255.255.255.0。这时候你会发现,第三个ip和前两个后能通信,因为前两个只是子网,第三个ip的子网掩码是包含前两个的。
我对网络的原理也不是很理解,这个问题也是我之前突然发现的一个现象。。。