一、定义
当我们对一个网络进行子网划分时,基本上就是将它分成小的网络。比如,当一组IP地址指定给一个公司时,公司可能将该网络“分割成”小的网络,每个部门一个。这样,技术部门和管理部门都可以有属于它们的小网络。通过划分子网,我们可以按照我们的需要将网络分割成小网络。这样也有助于降低流量和隐藏网络的复杂性。
二、子网掩码
RFC 950定义了子网掩码的使用,子网掩码是一个32位的2进制数,其对应网络地址的所有位置都为1,对应于主机地址的所有位置都为0。
由此可知,A类网络的默认子网掩码是255.0.0.0,B类网络的默认子网掩码是255.255.0.0,C类网络的默认子网掩码是255.255.255.0。将子网掩码和IP地址按位进行逻辑“与”运算,得到IP地址的网络地址,剩下的部分就是主机地址,从而区分出任意IP地址中的网络地址和主机地址。
子网掩码常用点分十进制表示,我们还可以用CIDR的网络前缀法表示掩码,即“/<网络地址位数>;”。如138.96.0.0/16表示B类网络138.96.0.0的子网掩码为255.255.0.0。
1、IP判断
子网掩码告知路由器,IP地址的前多少位是网络地址,后多少位(剩余位)是主机地址,使路由器正确判断任意IP地址是否是本网段的,从而正确地进行路由。
例如,有两台主机,主机一的IP地址为222.21.160.6,子网掩码为255.255.255.192,主机二的IP地址为222.21.160.73,子网掩码为255.255.255.192。现在主机一要给主机二发送数据,先要判断两个主机是否在同一网段。
主机一
222.21.160.6即:11011110.00010101.10100000.00000110
255.255.255.192即:11111111.11111111.11111111.11000000
按位逻辑与运算结果为:11011110.00010101.10100000.00000000
十进制形式为(网络地址):222.21.160.0
主机二
222.21.160.73 即:11011110.00010101.10100000.01001001
255.255.255.192即:11111111.11111111.11111111.11000000
按位逻辑与运算结果为:11011110.00010101.10100000.01000000
十进制形式为(网络地址):222.21.160.64
C类地址判断前三位是否相同,即可确定2个IP地址是否在同一网段内,但本例中的222.21.160.6与222.21.160.73不在同一网段,因为这两个C类IP地址已经做了子网划分就不能只判断前三位是否相同就确认这两个IP是否在同一网段。其中222.21.160.6在222.21.160.1-222.21.160.62 段,222.21.160.63在222.21.160.65-222.21.160.126 段,所以不在同一网段,如果要通信需要通过路由器转发。
2、设置
子网划分是通过借用IP地址的若干位主机位来充当子网地址从而将原网络划分为若干子网而实现的。
划分子网时,随着子网地址借用主机位数的增多,子网的数目随之增加,而每个子网中的可用主机数逐渐减少。以C类网络为例,原有8位主机位,2的8次方即256个主机地址,默认子网掩码255.255.255.0。借用1位主机位,产生2个子网,每个子网有126个主机地址;借用2位主机位,产生4个子网,每个子网有62个主机地址……每个子网中,第一个IP地址(即主机部分全部为0的IP)和最后一个IP(即主机部分全部为1的IP)不能分配给主机使用,所以每个子网的可用IP地址数为总IP地址数量减2;根据子网ID借用的主机位数,我们可以计算出划分的子网数、掩码、每个子网主机数,列表如下:
划分子网数 | 子网位数 | 子网掩码(二进制) | 子网掩码 (十进制) | 每个子网主机数 |
1~2 | 1 | 11111111.11111111.11111111.10000000 | 255.255.255.128 | 126 |
3~4 | 2 | 11111111.11111111.11111111.11000000 | 255.255.255.192 | 62 |
5~8 | 3 | 11111111.11111111.11111111.11100000 | 255.255.255.224 | 30 |
9~16 | 4 | 11111111.11111111.11111111.11110000 | 255.255.255.240 | 14 |
17~32 | 5 | 11111111.11111111.11111111.11111000 | 255.255.255.248 | 6 |
33~64 | 6 | 11111111.11111111.11111111.11111100 | 255.255.255.252 | 2 |
如上表所示的C类网络中,若子网占用7位主机位时,主机位只剩一位,无论设为0还是1,都意味着主机位是全0或全1。由于主机位全0表示本网络,全1留作广播地址,这时子网实际没有可用主机地址,所以主机位至少应保留2位。
3、计算步骤
1)确定要划分的子网数
2)求出子网数目对应二进制数的位数N及主机数目对应二进制数的位数M。
3)对该IP地址的原子网掩码,将其主机地址部分的前N位置取1或后M位置取0 即得出该IP地址划分子网后的子网掩码。
例如,对B类网络135.41.0.0/16需要划分为20个能容纳200台主机的网络(即:子网)。因为16<20<32,即:2的4次方<20<2的5次方,所以,子网位只须占用5位主机位就可划分成32个子网,可以满足划分成20个子网的要求。B类网络的默认子网掩码是255.255.0.0,转换为二进制为11111111.11111111.00000000.00000000。现在子网又占用了5位主机位,根据子网掩码的定义,划分子网后的子网掩码应该为11111111.11111111.11111000.00000000,转换为十进制应该为255.255.248.0。现在我们再来看一看每个子网的主机数。子网中可用主机位还有11位,2的11次方=2048,去掉主机位全0和全1的情况,还有2046个主机ID可以分配,而子网能容纳200台主机就能满足需求,按照上述方式划分子网,每个子网能容纳的主机数目远大于需求的主机数目,造成了IP地址资源的浪费。为了更有效地利用资源,我们也可以根据子网所需主机数来划分子网。还以上例来说,128<200<256,即2^7<200<2^8,也就是说,在B类网络的16位主机位中,保留8位主机位,其它的16-8=8位当成子网位,可以将B类网络135. 41.0.0划分成256(2^8)个能容纳256-1-1=254台(去掉全0全1情况)主机的子网。此时的子网掩码为11111111.11111111.11111111.00000000,转换为十进制为255.255.255.0。
在上例中,我们分别根据子网数和主机数划分了子网,得到了两种不同的结果,都能满足要求,实际上,子网占用5~8位主机位时所得到的子网都能满足上述要求,那么,在实际工作中,应按照什么原则来决定占用几位主机位呢?
4、注意事项
在划分子网时,不仅要考虑目前需要,还应了解将来需要多少子网和主机。对子网掩码使用必须要更多的子网位,可以得到更多的子网,节约了IP地址资源,若将来需要更多子网时,不用再重新分配IP地址,但每个子网的主机数量有限;反之,子网掩码使用较少的子网位,每个子网的主机数量允许有更大的增长,但可用子网数量有限。一般来说,一个网络中的节点数太多,网络会因为广播通信而饱和,所以,网络中的主机数量的增长是有限的,也就是说,在条件允许的情况下,会将更多的主机位用于子网位。
综上所述,子网掩码的设置关系到子网的划分。子网掩码设置的不同,所得到的子网不同,每个子网能容纳的主机数目不同。若设置错误,可能导致数据传输错误。
5、优点
1.减少网络流量
2.提高网络性能
3.简化管理
4.易于扩大地理范围
三、划分子网
首先要熟记2的幂:2的0次方到9次方的值分别为:1,2,4,8,16,32,64,128,256和512.还有要明白的是:子网划分是借助于取走主机位,把这个取走的部分作为子网位。因此这个意味划分越多的子网,每个子网容纳的主机将越少。
子网掩码(Subnet Masks)用于辨别IP地址中哪部分为网络地址,哪部分为主机地址,由1和0组成,长32位,全为1的位代表网络号。不是所有的网络都需要子网,因此就引入一个概念:默认子网掩码(default subnet mask)。A类IP地址的默认子网掩码为255.0.0.0;B类的为255.255.0.0;C类的为255.255.255.0。
Classless Inter-Domain Routing(CIDR)叫做无分类域间路由,ISP常用这样的方法给客户分配地址,ISP提供给客户1个块(block size),类似这样:192.168.10.32/28,这排数字告诉你你的子网掩码是多少,/28代表多少位为1,最大/32。但是你必须知道的1点是:不管是A类还是B类还是其他类地址,最大可用的只能为30/,即保留2位给主机位
CIDR值:
1.掩码255.0.0.0:/8(A类地址默认掩码)
2.掩码255.128.0.0:/9
3.掩码255.192.0.0:/10
4.掩码255.224.0.0:/11
5.掩码255.240.0.0:/12
6.掩码255.248.0.0:/13
7.掩码255.252.0.0:/14
8.掩码255.254.0.0:/15
9.掩码255.255.0.0:/16(B类地址默认掩码)
10.掩码255.255.128.0:/17
11.掩码255.255.192.0:/18
12.掩码255.255.224.0:/19
13.掩码255.255.240.0:/20
14.掩码255.255.248.0:/21
15.掩码255.255.252.0:/22
16.掩码255.255.254.0:/23
17.掩码255.255.255.0:/24(C类地址默认掩码)
18.掩码255.255.255.128:/25
19.掩码255.255.255.192:/26
20.掩码255.255.255.224:/27
21.掩码255.255.255.240:/28
22.掩码255.255.255.248:/29
23.掩码255.255.255.252:/30
1、划分目的
节约IP地址,避免浪费。
限定广播的传播。
保证网络的安全。
有助于覆盖大型地理区域。
2、划分捷径
1.你所选择的子网掩码将会产生多少个子网
2的x次方-2(x代表网络位借用主机的位数,即2进制为1的部分,现在的网络中,已经不需要-2,已经可以全部使用,不过需要加上相应的配置命令,例如CISCO路由器需要加上ip subnet zero命令就可以全部使用了。)
2.每个子网能有多少主机
2的y次方-2(y代表主机位,即2进制为0的部分)
3.有效子网是
有效子网号=256-10进制的子网掩码(结果叫做block size或base number)
4.每个子网的广播地址是
广播地址=下个子网号-1
5.每个子网的有效主机分别是
忽略子网内全为0和全为1的地址剩下的就是有效主机地址。最后1个有效主机地址=下个子网号-2(即广播地址-1)
3、具体实例
C类地址例子:网络地址192.168.10.0;子网掩码255.255.255.192(/26)
1.子网数=2*2=4(ip subnet zero命令启用)
2.主机数=2的6次方-2=62
3.有效子网:block size=256-192=64;所以第一个子网为192.168.10.0,第二个为192.168.10.64,第三个为192.168.10.128,第四个为192.168.10.192。
4.广播地址:下个子网-1.所以第一和第二个子网的广播地址分别是192.168.10.63和192.168.10.127
5.有效主机范围是:第一个子网的主机地址是192.168.10.1到192.168.10.62;第二个是192.168.10.65到192.168.10.126
B类地址例子1:网络地址:172.16.0.0;子网掩码255.255.192.0(/18)
1.子网数=2*2=4(ip subnet zero命令启用)
2.主机数=2的14次方-2=16382
3.有效子网:block size=256-192=64;所以第一个子网为172.16.0.0,第二个子网为172.16.64.0,第三个子网为172.16.128.0,最后1个为172.16.192.0
4.广播地址:下个子网-1.所以前2个子网的广播地址分别是172.16.63.255和172.16.127.255。
5.有效主机范围是:第一个子网的主机地址是172.16.0.1到172.16.63.254;第二个是172.16.64.1到172.16.127.254
B类地址例子2:网络地址:172.16.0.0;子网掩码255.255.255.224(/27)
1.子网数=2的11次方=2048(因为B类地址默认掩码是255.255.0.0,所以网络位为8+3=11)(ip subnet zero命令启用)
2.主机数=2的5次方-2=30
3.有效子网:block size=256-224=32;所以第一个子网为172.16.0.0,最后1个为172.16.255.224
4.广播地址:下个子网-1.所以第一个子网和最后1个子网的广播地址分别是172.16.0.31和172.16.255.255
5.有效主机范围是:第一个子网的主机地址是172.16.0.1到172.16.0.30;最后1个是172.16.255.225到172.16.255.254 Variable Length Subnet Masks(VLSM)
四、三类地址
我们知道,从LAN到WAN,不同种类网络规模相差很大,必须区别对待。因此按网络规模大小,将网络地址分为主要的三类,如下:
A类:0 网络号主机号
B类:1 0 网络号 主机号
C类:1 1 0 网络号 主机号
A类地址用于少量的网络(最多127个)主机数大于2^16的大型网,每个A类网络可容纳最多2^24台主机;
B类地址用于主机数介于2^8~2^16之间数量不多不少的中型网,B类网络最多2^14个;
C类地址用于每个网络只能容纳2^8台主机的大量小型网,C类网络最多2^21个。
除了以上A、B、C三个主类地址外,还有另外两类地址,如下:
D类:1 1 1 0多目地址
E类:1 1 1 1 0留待后用 其中多目地址(multicast address)是比广播地址稍弱的多点传送地址,用于支持多目传输技术。E类地址用于将来的扩展之用。