当一个组织申请了一段IP地址后,可能需要对IP地址进行进一步的子网划分。例如,某规模较大的公司申请了一个B类IP地址166.133.0.0。如果采用标准子网掩码255.255.0.0而不进一步划分子网,那么166.133.0.0网络中的所有主机(最多共65534台)都将处于同一个广播域下,网络中充斥的大量广播数据包将导致网络最终不可用。
解决方案是进行非标准子网划分。非标准子网划分的策略是借用主机号的一部分充当网络号。具体方法是采用新的、非标准子网掩码,而不采用默认的标准子网掩码。
例如,B类地址166.133.0.0,不使用标准子网掩码255.255.0.0,而是使用非标准子网掩码,如255.255.255.0、255.255.240.0等将网络划分为多个子网。
如图1所示。我们借用原来属于主机号范围的第3个位域充当子网号范围,即借用了8位主机号充当子网号。所采用的新子网掩码是:255.255.255.0,该子网掩码将这个B类的大网络166.133.0.0又划分成为254个小的子网(全0和全1的子网号不能使用)。对于这254个子网来说,每个子网各自又可以容纳254台主机。
图1 非标准子网划分
下面,我们分别以C、B、A类IP地址为例详细讨论非标准子网划分。
1对C类网络进行非标准子网划分
对于标准的C类IP地址来说,标准子网掩码为255.255.255.0,即用32比特IP地址的前24比特标识网络号,后8比特标识主机号。因此,每个C类网络下共可容纳254台主机(28-2)。
现在,我们先考虑借用2比特的主机号来充当子网络号的情形。如图2所示。
图2 借用2比特的主机号来充当子网络号
在图2中,为了借用原来8位主机号中的前2位充当子网络号,采用了新的、非标准子网掩码255.255.255.192。
采用了新的子网掩码后,借用的2位子网号可以用来标识两个子网:01子网和10子网(子网号不能全为0或1,因此00、11子网不能用)。
首先,对于01子网来说,其网络号的点分十进制的形式为:210.31.233.64,该子网的最小IP地址为:210.31.233.65,最大IP地址为:210.31.233.126,共可容纳62台主机。对该子网的直接广播地址为:210.31.233.127。如图3所示。
图3 01子网计算过程
其次,对于10子网来说,其网络号的点分十进制的形式为:210.31.233.128,该子网的最小IP地址为:210.31.233.129,最大IP地址为:210.31.233.190,共可容纳62台主机。对该子网的直接广播地址为:210.31.233.191。
同理,还可以借用3位、4位、5位、6位主机号充当子网号。表1总结了对C类IP地址借用不同位数的主机号时应采用的子网掩码,以及可划分为多少个子网和每个子网可容纳的主机数。注意,借1位或7位无效。
2对b类网络进行非标准子网划分
对于标准的b类ip地址来说,标准子网掩码为255.255.0.0,即用32比特ip地址的前16比特标识网络号,后16比特标识主机号。因此,每个b类网络下共可容纳65534台主机(216-2)。
我们同样先考虑借用2比特的主机号来充当子网络号的情形。如图4所示。
图4 借用2比特的主机号来充当子网络号
在图4中,为了借用原来16位主机号中的前2位充当子网络号,采用了新的非标准子网掩码255.255.192.0。
采用了新的子网掩码后,借用的2位子网号可以用来标识两个子网:01子网和10子网(子网号不能全为0或1,因此00、11子网不能用)。
首先,对于01子网来说,其网络号的点分十进制的形式为:166.133.64.0,该子网的最小IP地址为:166.133.64.1,最大IP地址为:166.133.127.254,共可容纳16382台主机。对该子网的直接广播地址为:166.133.127.255。如图5所示。
图5 01子网计算过程
其次,对于10子网来说,其网络号的点分十进制的形式为:166.133.128.0,该子网的最小IP地址为:166.133.128.1,最大IP地址为:166.133.191.254.,共可容纳16382台主机。对该子网的直接广播地址为:166.133.191.255。
同理,还可以借用3位、4位、5位、6位、7位、8位甚至更多位主机号来充当子网号,表2总结了对于B类网络常用的、借用不同位数的主机号时应采用的子网掩码,以及可划分为多少个子网和每个子网可容纳的主机数。注意,借1位或15位无效。