1.创建子网目的
假设某公司被分配有经过注册的IP地址132.132.0.0,这是一个B类IP地址。在该网络中最多可以有65534个主机。如此多的主机在一个网络内,无论从应用的角度,还是网络性能考虑都将会产生许多不便和困难。为此常常都需要把一个大的网络划分成若干个子网(subnets)。除了上述原因外,网络管理员创建子网还有更重要原因。
1)扩展网络。如果网络达到了物理限制(如星形拓扑结构的网络,每个主机连接于集线器或交换机的电缆长度不能超过100m),则可以通过增加路由器,并创建子网实现网络的扩展以连接更多的主机。
2)减少竞争。同一网络中的主机越多,需要带宽越大,创建子网可减少每个网络的主机数,从而减少对众多主机对带宽的竞争。
3)减少CPU使用负载。与减少竞争类似,网络中主机越多,产生的广播数据包就越多。即使许多数据报文并不发送给某个主机,但是网络中的主机也必须先接收数据包,以便决定是否最终接收还是丢弃该数据包。由此可见,在以太网中,主机将会占用比较大的资源来处理网络中的广播数据包,这无疑要占用CPU资源。通过创建子网,可以减少主机对广播数据包的处理,从而减轻CPU的使用负载。
4)隔离网络问题。通过将大网划分成较小的网络,可以限制网络中某些主机之间的访问,隔离某些主机以及子网的相互作用,保证某个或某些子网内重要主机的可靠性。
5)提高网络安全性。在一个像以太网(Ethernet)这样的广播式网络中,每个主机对发送到该网上的数据包均有访问能力,通过建立子网,可物理或逻辑上限制某些敏感信息发送到特定子网,以阻止其他子网中的用户对敏感数据的接触。局域网的VLAN技术,就是通过创建IP子网提高网络安全性的经典范例。在一个子网中,可保证该子网的网络结构,对于该子网以外的网络是不可见的,没有共同的广播数据包,从而使VLAN之间相互隔离。
6)使用多种介质。为了满足一些复杂应用要求,在一个网络中可能使用多种传输介质。通过将不同介质的网段分别划分于不同的子网,不但保证了子网协议的简单性,同时实现了在局域网中使用不同的介质以满足特殊应用的要求。
2.子网创建思路
4.5.3节最后很明确地指出,在IP中引入子网掩码的根本目的,并不仅仅是为了在IP地址中区分网络地址与主机地址,而是要应用子网掩码创建子网。如果把IP地址的A类、B类、C类分别看成是不同的子网,则其对应的子网掩码分别是255.0.0.0、255.255.0.0、255.255.255.0。这些子网掩码所标识的子网为标准子网结构,这也是IP网络中最基本的子网划分体系。
子网创建的策略是把一个大的IP网络划分为多个子网,其基本前提是该子网中有较多的主机地址。通过子网划分,使得原来在同一网络的主机地址属于了某个子网。而子网的地址并不需要重新申请注册,使用的是原网络中的主机地址。
可见,在IP网络中创建子网是利用主机地址扩展网络地址。就是说,在创建有子网的网络中,主机地址数量将比没有创建子网时少,所减少的主机地址成为了子网地址。
3.子网划分
创建子网并不需要额外的IP地址,使用的是为划分子网前IP网络的主机地址。如何把主机地址变成子网地址,其关键有两点。
1)在划分子网时,网络管理员需要事先很好地规划,准备用原属于主机的地址位(二进制)中的多少位变成子网地址。如要在某个C类网中划分子网,C类网的主机地址位一共有8位,主机地址最多有256个。若从二进制8位数取出1位用于子网地址,该C类网被划分为2个子网,则剩下7位仍作为主机地址,每个子网中将最多只有127个主机地址。若从二进制8位数取出2位用于子网地址,该C类网被划分4个子网,则剩下6位作为主机地址,每个子网中最多只有63个主机地址。依此类推,取3或4位用于子网地址,可将该C类网将被划分成8或16个子网。C类网的子网划分策略和方法详见表4-10。
表4-10 C类网可能的子网和每个子网中可能主机的数
2)如何把原来属于主机的地址识别为子网地址。为此,就需要在子网掩码上做文章。仍以C类网为例,已知C类网十进制子网掩码为255.255.255.0,但从十进制的子网掩码无法清楚地看出,子网掩码是如何把主机地址变成了子网地址。当把子网掩码与主机地址均变成二进制时,会很容易理解子网掩码的“神奇”。
C类网子网掩码的二进制表示为
11111111.11111111.11111111.00000000
而C类网的主机地址为
nnnnnnnn.nnnnnnnn.nnnnnnnn.xxxxxxxx
其中nnnnnnnn.nnnnnnnn.nnnnnnnn.00000000为C类网的网络地址,xxxxxxxx为该网络内的主机地址。它们是如何从一个IP地址中分离出来的呢?很简单。用其子网掩码与IP地址相“与”,便可直接得到网络地址,将此网络地址与IP地址再相减就是主机地址。子网的划分正是利用了上述原理。
假若在8位主机地址中取1位用于子网,则意味着该C类网的IP地址结构为
nnnnnnnn.nnnnnnnn.nnnnnnnn.nxxxxxxx
很自然,要求子网掩码要能与此对应,应该为
11111111.11111111.11111111.10000000
把此子网掩码写成十进制,便是255.255.255.128。也就是说,把标准的C类网子网掩码换成255.255.255.128,便表示从主机地址中取出了1位用于子网,原来用于表示主机的这一位变成了网络地址位。同样的方法,若在8位主机地址中取2位用于子网,则意味着该C类网的IP地址结构为
nnnnnnnn.nnnnnnnn.nnnnnnnn.nnxxxxxx
其子网掩码为
11111111.11111111.11111111.11000000(255.255.255.192)
表4-11总结了利用子网掩码,实现1~3位子网划分的结果:即:划分后的子网地址和相应的子网掩码。
表4-11 1~3位子网划分的结果
注:在“可能的子网地址”中,带“*”的为不可用的主机地址。
表4-12列出了IP地址在创建子网时,取不同的位数用于子网地址所有可能的子网掩码。
表4-12 各类IP地址创建子网时所有可能的子网掩码
表4-13列出了C类网中,进行子网划分时的所有可能的情况。
表4-13 在C类网创建子网所有可能的情况
4.子网的规划与地址分配
当需要在网络中划分子网时,作为网络管理员可按照以下步骤进行子网规划,并采用以下介绍的方法实施。
(1)确定子网的数量
一般用2n决定在二进制8位主机地址中取多少位用于子网地址,子网数为2n。例如,某公司的C类网需要划分出5个子网,那么若取n等于2,则可划分出的子网数量只有22=4个(<5个),满足不了子网地址数量的要求,所以必须取n=3位用于子网地址。子网的数量为23=8个。在此情况下,该网络最多可划分出8个子网,比实际需要的子网数量多了3个,正好备用。
进行子网数量的规划时,一定要考虑将来的发展。若当前需要8个子网,而不是上述的5个。好像按照上面的做法正好可以满足要求,但如果公司业务的发展要求再建立一个子网时怎么办?到那时再进行子网扩容会有很多的麻烦和不便。因此,明智的做法是宁可浪费几个IP地址,以免给未来的网络扩容造成更大的困难。因此,当要求有8个子网时,应在8位主机地址中取4位用于子网划分。(www.xing528.com)
(2)考虑子网主机数量对子网划分的影响
子网的划分仅仅考虑需要多少个子网是不够的,应同时照顾一个子网中拥有的主机数量。可以这样说,子网主机数量最终决定了一个网络可以划分的子网数量。
仍以C类网为例,当划分8个子网时,每个子网中最多只有32个主机地址(参见表4-13)。也就是说,该子网的主机最大地址空间为32,在此子网中无法容纳32个以上主机。显然,如果在某个子网中要求拥有32个以上的主机时,划分8个子网将不能满足主机地址空间的要求,对此必须加以调整。若一定要保证子网地址空间,则不得不缩小子网主机的容量,技术上就需要使用路由器或三层交换机实现子网之间的互连。若一定要保证子网中主机地址空间,则不得不减少子网的数量,这样可节省硬件投资。
可见,与划分子网一样,进行子网规划时,也要考虑到将来子网可能要增加的主机数量,保证主机地址空间符合将来发展的要求。总之,如果拥有了较多的子网地址空间,那么每个子网就只有较少的主机地址空间;如果拥有了较多的子网主机地址空间,那么网络的子网地址空间将减少。
(3)计算有效子网地址和主机地址的数量
首先可计算出有效的子网地址数量和每个子网有效的主机地址数量:
有效子网数量为2n-2。
有效主机数量为2m-2。
在上公式中,n等于屏蔽的地址位数,m等于未屏蔽的地址位。“-2”是因为子网或主机的地址(二进制)不能全0或全是1。例如,当n取2,可能的子网数量是22=4。这4个子网地址位分别是00,01,10,11,其中00和11不能用于子网。同理,主机的地址应该有26=64,但考虑到000000和1111111也不能用于主机,实际有效的估计地址数量为64-2=62。
在实际的应用中,对B类网进行划分子网是最常见的。因为在一个B类网里,理论上可以有65534个主机,在一个网段安装如此大量的主机显然是不现实的。假设某公司网络管理员规划把公司的B类网划分成5个子网,使用IP地址第3字节的前3位用于定义子网,则。
子网掩码:255.255.224.0。
有效子网数:23-2=6。
每个子网有效主机:2(16-3)-2=213-2=8190。
对于B类网,如果以整个第三字节作为子网(n=8,m=16-8=8),每个子网有效的主机数将减少到28-2,即254个。在此情形下,一共可建立254个子网,子网掩码变成255.255.255.0。
注意:该子网掩码与标准的C类网子网掩码相同,但不表明相应的IP地址是C类IP地址。当某个B类IP地址使用的是C类子网掩码时,说明了该B类网络被划分成为了254个子网,每个子网中最多可以有254个主机。
若同样取n=3,对于C类网,可创建的有效子网数也是6,每个子网有效主机=2(8-3)-2=25-2=30。
(4)为子网和主机分配地址
当子网划分规划设计完成后,紧接着就要个给每个子网分配相应的子网地址,同时还将为子网中的主机分配相应的主机地址。
子网地址的分配过程与方法如下:
首先,把子网掩码中最右位的“1”由二进制转化成十进制,该数值将作为子网地址相间隔的增量Δ。例如,取C类网主机位中的3位用于子网,则其子网掩码的最“右”位对应的十进制数为64(100000),即Δ=32。
然后,在原始的网络地址上加一个Δ,便获得第一个子网地址值。例如,上述C类网的第一子网地址是0.0.0.32。
在上一个子网地址上再加一个Δ值,便可获得第二个子网地址。如上例,第二个子网的地址是0.0.0.64。
重复上述步骤,可获得所有子网地址。如上例,第二个子网之后的子网地址分别是:0.0.0.96、0.0.0.128、0.0.0.160、0.0.0.192(注:类似0和255不能用)。
主机地址的分配过程与方法如下:
当子网划分成功之后,每个子网中主机地址的范围也随之确定。仍以上述为例,被分配使用的一个子网一般不是32(001),而是128(100)子网(为什么后面将说明)。128子网中主机的地址应该在子网地址128(100)与子网地址160(101)之间,具体的地址范围是128(10000000)~159(10011111)。如0.0.0.140便属于128子网中的一个主机。同样的道理,其他子网的主机地址范围分别是。
32子网中的主机地址范围:32~63[(00100000)~(00111111)]。
64子网中的主机地址范围:64~95[(01000000)~(01011111)]。
96子网中的主机地址范围:96~127[(01100000)~(01111111)]。
128子网中的主机地址范围:128~191[(10000000)~(10011111)]。
192子网中的主机地址范围:192~223[(10100000)~(10111111)]。
为了全面说明上述有关子网和主机地址的分配方法,假设某公司网络管理员要将自己的网络划分为6个子网,该网络的网络地址为C类网:192.168.10.0。与上述的例子完全类似,具体结果为
子网掩码:255.255.255.224。
6个有效的子网的地址及主机的有效地址的范围分别为
子网:192.168.10.32,主机:192.168.10.33~192.168.10.62,共30个有效地址。
子网:192.168.10.64,主机:192.168.10.65~192.168.10.94,共30个有效地址。
子网:192.168.10.96,主机:192.168.10.65~192.168.10.126,共30个有效地址。
子网:192.168.10.128,主机:192.168.10.129~192.168.10.222,共30个有效地址。
(5)用发展的思想进行子网地址分配
考虑到未来子网需求的变化,TCP/IP有关子网分配的规范建议:
子网地址的分配,最好从子网位的最左边开始,而主机地址从主机位的最右边开始。
同上例,第一个被分配子网地址应该是128(10000000),该子网被分配的第一主机地址应该是129(10000001);第二个被分配的子网则应该是64(01000000),其主机的第一个地址是65(01000001);其他依此类推。
上述做法的好处在于,当需要更多的子网时,可直接多取一位主机位用于扩建子网,可对相应子网主机的地址影响最小,一般可不必调整主机的地址,仅仅改变子网掩码便可达到扩充子网的目的;而当需要子网有更多主机时,子网的地址尚未用尽,且空余较多,这时可把划分给子网的地址减少。为此仅需要用子网掩码调整,使之屏蔽位即可。原来已经分配的子网地址可以不改变,主机地址空间随之增大一倍。
假设原来划分的子网不够,需要扩充到10个子网,每个子网中的主机数量不多。为此,必须使用4位主机位用于子网。如128子网的地址是(10000000),而主机的第一个地址为129(10000001),只要原来主机的地址小于15(1111),其二进制的主机地址在扩充了子网后并未改变。
相反,假设原来留给每个子网的主机地址空间不够,且已经被分配的子网数量较少。为此,必须把原来用于子网的主机位缩小为2位。如128子网的地址是(10000000),而该原子网最后一个(最大的)主机有效地址为190(10011110)。释放1位子网位后,其最大的主机有效地址变成222(10111110),而子网地址仍然是128(10000000)。
总之,采用发展的思想分配子网地址及主机地址有利于子网扩容或子网主机地址空间扩容的管理。只要所需要的位没有被主机使用,只需要简单地更改子网掩码,便可实现子网的扩容,且不需要再分配主机地址。同样,只要所需要的位没有被子网使用,只需要简单地更改子网掩码,便可在不重新分配子网地址的情况下,实现子网中主机地址空间的扩容。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。