首页 理论教育 计算机网络子网与子网掩码分析

计算机网络子网与子网掩码分析

时间:2022-08-19 理论教育 版权反馈
【摘要】:显然,在划分子网时,随着子网地址借用主机位数的增多,子网的数目将随之增加,而每个子网中的可用主机数则逐渐减少。故通过子网掩码中“0”的位数即可快速确定子网中可包含的主机数量,而且,若要想从目标IP地址中解析出网络号和子网号,只需要将目标IP地址与子网掩码进行AND(逻辑与)运算即可。

依据前述IP地址的分类方法,由于单个的A、B或C类地址只能用于同一个网络,而不是一组LAN,而A、B或C类地址分别最多允许126、16 384和200多万个网络,因此,随着网络数量的迅猛增长,很快就出现了网络地址严重匮乏的问题,而另一方面,由于大部分的网络仅仅包含了几台到几百台主机,从而造成了大量IP地址的浪费。

例如:一个A类网络可以包含16 777 214台主机,所有主机均处于同一广播域中,但是,在同一广播域中有这么多主机是不可能的,因为这将使得整个网络会因广播通信而饱和,由此也就造成了16 777 214个IP地址中的绝大部分都不可能被分配出去。

为了减少IP地址的浪费,在现有IP地址分类方法的基础上,人们提出了子网(Subnet)的概念,其目的是把基于类的IP网络进一步细分成更小的网络(即子网),其中,每个子网由路由器界定并分配一个新的唯一的子网地址,而子网地址则是借用基于类的IP地址中的若干位主机位来表示的。

显然,在划分子网时,随着子网地址借用主机位数的增多,子网的数目将随之增加,而每个子网中的可用主机数则逐渐减少。以一个C类地址为例,原有8位主机位,则该C类网络中除了全0和全1的地址外,将包含254(=28−2)个可用的主机地址。在划分子网时,若借用1位主机位作为子网地址,则可产生2(=21)个子网,其中,每个子网将包含126(=27−2)个可用的主机地址;若借用2位主机位作为子网地址,则可产生4(=22)个子网,其中,每个子网将包含62(=26−2)个可用的主机地址。

在划分子网之后,IP地址的结构从网络ID+主机ID变成了网络ID+子网ID+主机ID。当一个分组到达路由器时,路由器必须知道应把该分组转发给哪个子网,即路由器必须能够从目标IP地址中解析出网络号和子网号。为此,人们提出了子网掩码(Subnet Mask)的概念,其实现原理为:子网掩码是一个32位的二进制字符串,该二进制字符串的左边为多个连续的“1”,右边为多个连续的“0”,其中,左边连续的“1”的个数等于网络ID+子网ID的长度,而右边连续的“0”的个数则等于主机ID的长度。故通过子网掩码中“0”的位数即可快速确定子网中可包含的主机数量,而且,若要想从目标IP地址中解析出网络号和子网号,只需要将目标IP地址与子网掩码进行AND(逻辑与)运算即可。

例如:对某个C类网络地址192.168.1.X,假定取3位主机位作为子网ID的长度进行子网划分,则可以将该C类网络地址划分为以下8个子网:

◆ 子网1:192.168.1.000YYYYY,子网1中包含的IP地址为192.168.1.0~192.168.1.31,子网1的网络号192.168.1.0。

◆ 子网2:192.168.1.001 YYYYY,子网2中包含的IP地址为192.168.1.32~192.168.1.63,子网2的网络号192.168.1.32。

◆ 子网3:192.168.1.010YYYYY,子网3中包含的IP地址为192.168.1.64~192.168.1.95,子网3的网络号192.168.1.64。

◆ 子网4:192.168.1.011 YYYYY,子网4中包含的IP地址为192.168.1.96~192.168.1.127,子网4的网络号192.168.1.96。

◆ 子网5:192.168.1.100YYYYY,子网5中包含的IP地址为192.168.1.128~192.168.1.159,子网5的网络号192.168.1.128。

◆ 子网6:192.168.1.101 YYYYY,子网6中包含的IP地址为192.168.1.160~192.168.1.191,子网6的网络号192.168.1.160。

◆ 子网7:192.168.1.110YYYYY,子网7中包含的IP地址为192.168.1.192~192.168.1.223,子网7的网络号192.168.1.192。

◆ 子网8:192.168.1.111 YYYYY,子网8中包含的IP地址为192.168.1.224~192.168.1.255,子网8的网络号192.168.1.224。

在以上8个子网之中,由于网络ID的长度为24,子网ID的长度为3,故在设计子网掩码时,左边连续的“1”的个数应等于27,而右边连续的“0”的个数则等于5,因此,各子网所对应的子网掩码均为“255.255.255.224”。

为了进一步更形象地描述子网划分的具体方法,特举例说明如下:假定从192.22.0.0(11000000000101100000000000000000)开始的IP地址可用,网络A需要2000个地址,网络B需要4090个地址,网络C需要1020个地址,则依据以上给出的子网概念,我们可以按照如下步骤来进行子网划分:

步骤1(确定主机位的个数):由于211=2048,因此,需要11位的主机号才能满足网络A的2000个地址需要;由于212=4096,因此,需要12位的主机号才能满足网络B的4090个地址需要;由于210=1024,因此,需要10位的主机号才能满足网络C的1020个地址需要。

步骤2(确定网络A所对应的子网):由于对网络A应使用11位作为主机位,故可从192.22.X.Y的后16位中选取前5位作为子网位,而后11位则为主机位。即,网络A中的主机号为110000000001011000000### ########,对应的IP地址为11000000000101100000000000000000(192.22.0.0)~110000000001011000000111 11111111(192.22.7.255),而对应的子网掩码为11111111 11111111 1111100000000000(255.255.248.0)。

步骤3(确定网络B所对应的子网):由于形如110000000001011000000### ########的2048个地址已分配给了网络A,而形如110000100001100000001### ########的2048个地址不能分配给网络B,因为地址数量不满足网络B的4096个地址的需要,由此可知,形如11000010000110000000#### ########的4096个地址均不能分配给网络B。

因此,基于IP地址的连续分配原则考虑,可将形如11000000000101100001#### ######## 的4096个地址分配给网络B(当然,也可以将形如11000000000101100011#### ########的4096个地址分配给网络B,但这样将造成IP地址碎片的产生,不符合IP地址的连续分配原则)。显然,网络B中的IP地址为11000000000101100001000000000000(192.22.16.0)~110000000001011000011111 11111111(192.22.31.255),而对应的子网掩码为11111111 11111111 1111000000000000(255.255.240.0)。

步骤4(确定网络C所对应的子网):由前面的分析可知,由于形如110000000001011000001### ########的2048个地址没有被分配,且大于网络C的1024个地址需要,故可将形如110000000001011000001### ########的2048个地址更进一步细分为2个子网:1100000000010110000010## ########和1100000000010110000011## ########,其中,每个子网都包含了1024个地址,均满足网络C的1020个地址的需要。

再考虑到地址的连续分配原则,因此,可以将形如1100000000010110000010## ######## 的1024个地址分配给网络C。即,网络C中的IP地址为11000000000101100000100000000000(192.22.8.0)~110000000001011000001011 11111111(192.22.11.255),而对应的子网掩码为11111111 11111111 1111110000000000(255.255.252.0)。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈