乐趣区

子网掩码概念补充

小记
大学里学的子网掩码的概念都已经生疏了,昨天在工作中又一次接触到了这个概念,便做个整理备忘。
子网掩码
概念
子网掩码 (subnet mask) 又叫网络掩码、地址掩码、子网络遮罩,它是一种用来指明一个 IP 地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,它必须结合 IP 地址一起使用。子网掩码只有一个作用,就是将某个 IP 地址划分成网络地址和主机地址两部分。
规则
子网掩码的设定必须遵循一定的规则。与二进制 IP 地址相同,子网掩码由 1 和 0 组成,且 1 和 0 分别连续。子网掩码的长度也是 32 位,左边是网络位,用二进制数字“1”表示,1 的数目等于网络位的长度;右边是主机位,用二进制数字“0”表示,0 的数目等于主机位的长度。这样做的目的是为了让掩码与 ip 地址做按位与运算时用 0 遮住原主机数,而不改变原网络段数字,而且很容易通过 0 的位数确定子网的主机数(2 的主机位数次方 -2,因为主机号全为 1 时表示该网络广播地址,全为 0 时表示该网络的网络号,这是两个特殊地址)。只有通过子网掩码,才能表明一台主机所在的子网与其他子网的关系,使网络正常工作。
举例
192.39.187.241/255.255.255.240,这里子网掩码是 255.255.255.240,这个是我们常见的 C 类网络地址,对于 C 类地址来说默认的子网掩码是 255.255.255.0。
如果子网掩码是 255.255.255.0,二进制表示 11111111.11111111.11111111.00000000,左边 24 位 1 表示的是网络号,右边 8 个 0 表示的是主机位数。那么可算得它对应的主机数为 2^8-2 = 254 个。
如果子网掩码是 255.255.255.240,二进制表示 11111111.11111111.11111111.11110000,左边 28 位 1 表示的是网络号,右边 4 个 0 表示的是主机位数。那么可算得它对应的主机数为 2^4-2 = 14 个。
同样 192.39.187.241/28,后面的 28 指的是子网掩码按二进制的形式转换过来后,网络位是 28 位,这与 255.255.255.240 表示的是同样的意思。
正常的 C 类网络地址是 24 位网络号,8 位主机号,但如果出现网络号数量不够用时,网络号便会向主机号借用,掩码 255.255.255.240 便是向主机位借了 4 位。
网络地址
IP 地址二进制:`11000000.00100111.10111011.11110001`

掩码二进制:`11111111.11111111.11111111.11110000`

` 与 ` 操作得到网络地址:`11000000.00100111.10111011.11110000` = 192.39.187.240

广播地址
广播地址,就是将二进制表示的网络地址的主机位全部换成 1
网络地址:11000000.00100111.10111011.11110000
广播地址:11000000.00100111.10111011.11111111 = 192.39.187.255
可用地址
网络地址和广播地址之间的 IP 地址便是可用地址,即 192.39.187.241 到 192.39.187.254。
第一可用:192.39.187.241
最后可用:192.39.187.254

退出移动版