在cmd中输入ipconfig
,经常会看到子网掩码
。如下:
子网掩码225.225.225.0
的二进制数是[1111 1111].[1111 1111].[1111 1111].[0000 0000]
。
子网掩码225.225.224.0
的二进制数是[1111 1111].[1111 1111].[1111 1110].[0000 0000]
。
子网掩码的作用是什么?
把IP地址分为网络号
和主机号
。子网掩码为1
的位表示网络号,为0
的位表示主机号。如上图,子网掩码255.255.255.0
表示前24位是网络号,后8位是主机号。IP地址192.168.10.60
的二进制数是
[1100 0000].[1010 1000].[0000 1010].[0011 1100]
,所以[1100 0000].[1010 1000].[0000 1010]
是网络号,[0011 1100]
是主机号。
为什么要区分网络号和主机号?
网络号和主机号的区分。相当于身份证上的前六位区分,网络号相当于市区,主机号相当于县。例如:
地址 | 身份证前6位 |
---|---|
湖北省 武汉市: | 420100 |
湖北省 武汉市 江夏区: | 420115 |
湖北省 武汉市 汉阳区: | 420105 |
湖北省 襄阳市: | 420600 |
湖北省 黄冈市: | 421100 |
广东省 佛山市 | 440600 |
广东省 珠海市 | 440400 |
身份证的前6位中,前两位代表省
,中间两位代表市
,后两位代表区或县
。
所以分省市区的原因是许多人出生在同一个省,或者同一个市,或者同一个区。只是出生时间不同。
同理,许多设备的连接同一个路由器,它们有相同的网络号。只是主机号不同。
什么是最长掩码匹配原则?
路由器使用最长掩码匹配来确定最具体的路由表
条目。它会与目标IP地址进行比较,选择最长掩码的ip地址。
例如,如果目标IP地址是192.168.0.1
, 路由表中有两个ip地址: 192.168.0.0/24
和192.168.0.0/16
,那么路由器将选择具有最长掩码的192.168.0.0/24
作为匹配项。
如何查看本机路由表?
上文提到了路由表
。windows系统,打开cmd,输入:
route print
或者route print -4
如下图: