当前使用的IP地址有4个字节(32bit)组成,即IPV4编码方式。每个IP地址包括两部分:网络号和主机号。当分配给主机号的二进制位越多,则能标识的主机数就越多,相应地能标识的网络数就越少,反之同理。
已知192.168.1.133、255.255.255.0,这个子网掩码是C类地址的默认的子网掩码,在使用这个掩码时,这个IP地址并没有划分子网,将其转换为8位二进制数,其中的1所的对应的部分就是网络号,而0所对应的部分就是主机号。根据计算方法,192.168.1.0就是网络号(代表当前网络),0.0.0.133就是主机号。同时根据定义,主机号位全为一的地址为此网段的广播地址可知,此时的广播地址为192.168.1.255。此种默认情况是最常见的。
下面看下将网络划分子网后的情况,如:已知192.168.1.133、255.255.255.192.判断网络号,主机号和广播地址。
我们来看掩码255.255.255.192,将其转换成二进制后和255.255.255.0对比可发现,前掩码的前24位没有变化,只是在原来表示主机号的部分头两位变成了1。
我们把IP地址中的前24位(192.168.1)不看,因为前24位对应掩码没有变化它们始终表示网络号。
按照子网掩码的定义,
子网掩码1所对应的位为网络号位
而0所对应的位为主机号位
如图中深蓝色部分所示,主机号中的两位被用来表示网络号了,这就是子网号。(二进制一位用0或1表示,那么占用了两位就有2*2=4种表示,这里占用了2位,也就是说我们将原有的192.168.1.0这个网络分成了四份,即4个子网)这四段的网络号分别是00000000、01000000、10000000、11000000,现在我们将它们转换成10进制就分别是0、64、128、192,现在把前24位加进来。
这四段网络分别是192.168.1.0 (~192.168.1.63)
192.168.1.64 (~192.168.1.127)
192.168.1.128 (~192.168.1.191)
192.168.1.192 (~192.168.1.255)
现在我们来看广播地址,既然我们把一个网段分成了四份,它就应该有4个广播地址。 广播地址的定义是主机号位全位1的地址就是广播地址。所以这四个网段的广播地址末八位就是00111111、01111111、10111111、11111111,转换成10进制分别为63、127、191、255。加上原来的网络号位,广播地址就是
192.168.1.63
192.168.1.127
192.168.1.191
192.168.1.255
四个网段中刨除网络地址和广播地址中间的部分就是可用的主机IP地址了。
通过以上分析方法可知192.168.1.133这个IP地址的网络号是192.168.1.128,其主机号是0.0.0.5,广播地址是192.168.1.191。
-
将要划分的子网数目转换为 2 的 m 次方。如要分 8 个子网, 8=23 。
-
取上述要划分子网数的 2m 的幂 m 。如 23 ,即 m=3 。
-
将上一步确定的幂m按高序占用主机地址m位后转换为十进制。
-
如m为3 则是11100000,转换为十进制为224,即为最终确定的子网掩码。如果是C类网,则子网掩码为255.255.255.224;如果是B类网,则子网掩码为255.255.224.0;如果是A类网,则子网掩码为255.224.0.0。在这里,子网个数n与占用主机地址位数m有如下等式成立:2 m=n。
( 因为全 “0” 和全 “1” 的主机地址有特殊含义,不作为有效的 IP 地址 )
例:学校新建5个机房,每个房间有30台机器,如果给定一C类网络地址:192.168.1.0,问如何将其划分为5个子网,子网掩码该如何设置?
答:23 =8(大于5的最小的2的整幂次数),取23的幂,即3,即占用了主机号中的高3位即为11100000,转换为十进制为224,所以该地址为C类地址的子网掩码应该设置为255.255.255.224。各机房IP和子网掩码配置如下(已经去掉广播地址和主机地址):
机房号 子网掩码 IP地址范围
机房1 255.255.255.224 192.168.1.1~192.168.1.30
机房2 255.255.255.224 192.168.1.33~192.168.1.62
机房3 255.255.255.224 192.168.1.65~192.168.1.94
机房4 255.255.255.224 192.168.1.97~192.168.1.126
机房5 255.255.255.224 192.168.1.129~192.168.1.158