判断步骤 :
将IP和掩码转换成二进制
转换后的IP和掩码对位相乘
将相乘后的结果转换成十进制
通过最后的结果判断是否为相同网段
下面以192.168.1.1,192.168.1.2和192.168.2.1 ,掩码都为255.255.255.0为例通过上述步骤来判断。
1.将IP和掩码转换成二进制
192.168.1.1 —> 11000000.10100000.00000001.00000001
192.168.1.2 —> 11000000.10100000.00000001.00000010
192.168.2.1 —> 11000000.10100000.00000010.00000001
255.255.255.0 —> 11111111.11111111.11111111.00000000
2.转换后的IP和掩码对位相乘
192.168.1.1与掩码对位相乘
1 1 0 0 0 0 0 0 . 1 0 1 0 0 0 0 0 . 0 0 0 0 0 0 0 1 . 0 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 . 1 0 1 0 0 0 0 0 . 0 0 0 0 0 0 0 1 . 0 0 0 0 0 0 0 0
转换为十进制:
192.168.1.0
192.168.1.2与掩码对位相乘
1 1 0 0 0 0 0 0 . 1 0 1 0 0 0 0 0 . 0 0 0 0 0 0 0 1 . 0 0 0 0 0 0 1 0
1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 . 1 0 1 0 0 0 0 0 . 0 0 0 0 0 0 0 1 . 0 0 0 0 0 0 0 0
转换为十进制:
192.168.1.0
192.168.2.1与掩码对位相乘
1 1 0 0 0 0 0 0 . 1 0 1 0 0 0 0 0 . 0 0 0 0 0 0 1 0 . 0 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 . 1 0 1 0 0 0 0 0 . 0 0 0 0 0 0 1 0 . 0 0 0 0 0 0 0 0
转换为十进制:
192.168.2.0
4.从以上结果可以看出在同一掩码的ip192.168.1.1和192.168.1.2为同一网段的ip,192.168.2.1与其他两ip为不同网段的ip。
在我们使用时,防止发生ip冲突。
补充:255所对应的位要求相同,0所对应的位要求不同。
备注:如果有多个0,至少有一个0所对应的位要求不同。