本文共 12031 字,大约阅读时间需要 40 分钟。
我们创建子网的时候,是根据一定的要求创建,这个要求就是我们实际的网络需求。一般我们按如下步骤来明确我们的网络需求:
(1)确定需要的网络ID数:(2)确定每个子网所需的主机数:
(3)根据上述需求,确定如下内容:
并非所有网络都需要子网,这意味着网络可使用默认子网掩码。这相当于说IP地址不包含子网地址。下表列出了A类、B类和C类网络的默认子网掩码。
CIDR:( Classless Inter-Domain Routing,无类别域间路由). 我们需要了解这种网络表示法。形式如:192.168.10.32/28。前面的数字是我们的网络地址,后面的28表示用28位来表示网络位,用32-28=4位来表示主机位。通过这种记法,我们能明确两个信息:
通过下表我们能明确子网掩码和斜杠表示法之间的关系
这就是大多数公司都使用 A 类网络地址的一大原因,因为它们可使用所有的子网掩码,进行网络设计时的灵活性最大。
2^x 个,其中 x 是子网掩码借用的主机位数。如:192.168.10.32/28,我们知道C类ip的默认子网掩码为:255.255.255.0,而由上文的CIDR知识,我们了解到这个ip的实际子网掩码是:255.255.255.240。
原本最后一个字节应该是0(00000000),现在却是240(11110000)。故其借用了主机位4位来充当网络位。这个地方不懂的话可以结合我后面的实际案例一起来看2^y-2台,其中y是没被借用的主机位的位数。-2是因为,主机位全为0的部分是这个子网的网段号(Net_id),全为1的部分是这个网段的广播地址。
算出子网的步长(增量)。一个例子是256-192 = 64,即子网掩码为192时,步长为64。从0开始不断增加剧,直到到达子网掩码值,中间的结果就是子网,即0、64、128和192,
主机位全为1就是该子网的广播地址。一般我们这样计算:广播地址总是下一个子网前面的数.前面确定了子网为0、64、128和192,例如,子网0的广播地址为63,因为下一个子网为64;子网64的广播地址为127,因为下一个子网为128,以此类推。请记住,最后一个子网的广播地址总是255
合法的主机地址位于两个子网之间,但全为0和全为1的地址除外。例如,如果子网号(网段号)为64,而广播地址为127,则合法的主机地址范围为65-126,即子网地址和广播地址之间的数字。
首先我们要知道C类可使用的全部子网掩码:
下面我分别用图表和图画来表示该子网划分,以希望大家能有一个更深刻的理解。
下面我分别使用图表和图画来更形象的展示这五大问题的答案。
子网划分结果:
子网划分结果:
案例1:
已知ip地址=192.168.10.33 ,子网掩码=255.255.255.224,求该网络的子网划分。案例2:
案例3:
B类地址可使用的CIDR地址表:
注意:在B类地址中,有16位可用于主机地址。这意昧着最多可将其中的14位用于子网划分,因为至少需要保留2位用于主机编址。使用/16意味着不对B类网络进行子网划分,但它是一个可使用的子网掩码。
案例1:
255.255.128.0 (/17) 网络地址=172.16.0.0 子网掩码=255.255.128.0案例2:
255.255.255.128 (/25) 这是一个非常难但是却十分适合生产环境的子网划分组合 网络地址=172.16.0.0 子网掩码=255.255.255.128下面用图表列出这个例子的子网划分结果:
当使用cidr表示子网划分,网络位的位数>24时,比如/25,/27.我们只需要考虑第四个字节。<=24时,我们只需要考虑第三个字节,因为第四个字节的主机位并没有被借用,并没有参与到子网划分。
A类网络的子网划分与B类和C类网络没有什么不同,但需要处理的是24位,而B类和C类网络中需处理的分别是16位和8位。
可用于A类的所有子网掩码:案例1:
255.255.240.0(/20) 网络地址=10.0.0.0 子网掩码=255.255.240.0(/20)时,12位用于子网划分,余下12位用于主机编址。案例2:
网络地址=10.0.0.0 子网掩码=255.255.255.192(/26) 这个例子将第二个、第三个和第四个字节用于划分子网。下面只列出最后一部分的子网划分
最后一个案例:
ip地址=10.1.3.65/23 求该ip地址对应的子网以及该子网合法的主机地址和广播地址: **回答:**首先,如果不知道/23对应的子网掩码,你就回答不了这个问题。它对应的子网掩码为255.255.254.0。 这里需要注意的字节为第三个。256-254=2,因此第三个字节的子网号为0、2、4、6等。 在这个问题中,主机位于子网2.0中,而下一个子网为4.0,因此该子网的广播地址为3.255。10.1.2.1~10.1.3.254中的任何地址都是该子网中合法的主机地址。CIDR中文全称是无分类域间路由选择,英文全称是Classless Inter-Domain Routing,在平常,大家多称之为无分类编址,它也是构成超网的一种技术实现。CIDR在一定程度上解决了路由表项目过多过大的问题。CIDR之所以称为无分类编址,就是因为CIDR完全放弃了之前的分类IP地址表示法,它真正消除了传统的A类、B类、C类地址以及划分子网的概念,它使用如下的IP地址表示法:
IP地址 ::= {<网络前缀>, <主机号>} / 网络前缀所占位数
CIDR仅将IP地址划分为网络前缀和主机号两个部分,可以说又回到了二级IP地址的表示,不过大家要注意,最后面用“/”斜线分隔,在其后写上了网络前缀所占的位数,这样就不需要告知路由器地址掩码,仅需要通过网络前缀所占的位数就可以得到地址掩码,为了统一,CIDR中的地址掩码依然称为子网掩码。
CIDR表示法给出任何一个IP地址,就相当于给出了一个CIDR地址块,这是由连续的IP地址组成的,所以CIDR表示法构成了超网,实现了路由聚合,即从一个IP地址就可以得知一个CIDR地址块。例如:已知一个IP地址是:128.14.35.7/20,那么这个已知条件告诉大家的并不仅仅是一个IP地址这么简单,我们来分析一下。
128.14.35.7/20 = 10000000 00001110 00100011 00000111
即前20位是网络前缀,后12位是主机号,那么我们通过令主机号分别为全0和全1就可以得到一个CIDR地址块的最小地址和最大地址,即
最小地址是:128.14.32.0 = 10000000 00001110 00100000 00000000
最大地址是:128.14.47.255 = 10000000 00001110 00101111 11111111
子网掩码是:255.255.240.0 = 11111111 11111111 11110000 00000000
因此就可以看出来,这个CIDR地址块可以指派(47-32+1)*256=4096个地址,这里没有把全0和全1除外。
在CIDR表示法中也可以进行进一步的子网划分,和前面的子网划分类似,我们只需要从主机号中借走一定的位数即可,这里与前面的基本子网划分不同,借走2位时可以划分成4个子网,不用减2,其他位数类似。下面通过一个例子来讲解CIDR中的子网划分。
例:某个机构拥有一个大的CIDR地址块,即206.0.64.0/18,现在某个高校需要申请一个较大的CIDR地址块以供学校使用,学校内部又分为4个系,由于每个系的人数不一样,所以要给人数较多的系分配较多的IP地址,人数较少的系分配较少的IP地址,现在采用以下的分配方案:
机构分配给该高校一个CIDR地址块:206.0.68.0/22,然后该高校内部的分配方案如下:
一系:206.0.68.0/23,一系内部又分为206.0.68.0/25、206.0.68.128/25、206.0.69.0/25和206.0.69.128/25四个子网。
二系:206.0.70.0/24,二系内部又分为206.0.70.0/26、206.0.70.64/26、206.0.70.128/26和206.0.70.192/26四个子网。
三系:206.0.71.0/25,三系内部又分为206.0.71.0/26和206.0.71.64/26两个子网。
四系:206.0.71.128/25,四系内部又分为206.0.71.128/26和206.0.71.192/26两个子网。
请分析以上方案划分的具体细节。
答:这是一个CIDR子网划分中比较复杂的例子,如果大家能分析透彻这个例子,那么对于CIDR的子网划分的计算就基本不在话下了。
我们一步一步来讨论:
第一,这个机构拥有的地址块是206.0.64.0/18 =206.0.0100 0000.0000 0000/18,网络前缀是18位,所以其
最小地址是:206.0.64.0/18 = 206.0.0100 0000.0000 0000/18
最大地址是:206.0.127.255/18 = 206.0.0111 1111.1111 1111/18
子网掩码是:255.255.192.0/18 = 1111 1111.1111 1111.1100 0000.0000 0000/18
拥有的地址数:(127-64+1)*(255-0+1)=16384
然后,我们来看一下这个机构给该高校分配的CIDR地址块,即206.0.68.0/22,由此可以看出来网络前缀由18增加到了22,所以该机构相当于将其CIDR地址块划分成了16个子块即子网,然后给该高校了第二个子网,即206.0.0100 0100.0/22,黑色加粗的部分是原来的网络前缀,后面红色部分类似于前面介绍的子网号,由于是4位,所以可以从0000~1111,共16个子网,0001自然就是第二个子网。
第二,既然高校拥有了机构的第二个子网的CIDR地址块206.0.68.0/22 = 206.0.0100 0100.0/22,其网络前缀是22位,所以其
最小地址是:206.0.68.0/22 = 206.0.0100 0100.0000 0000/22
最大地址是:206.0.71.255/22 = 206.0.0100 0111.1111 1111/22
子网掩码是:255.255.252.0/22 = 1111 1111.1111 1111.1111 1100.0000 0000/22
拥有的地址数:(71-68+1)*(255-0+1)=1024
然后该高校内部又对这个CIDR地址块进行了划分,进一步得到了高校内部的子网,紧接着我们来看看一系的CIDR地址块是怎么得到的。
第三,一系的CIDR地址块是206.0.68.0/23,可以看出来其网络前缀相对于高校的CIDR地址块来说增加了1位,说明高校首先将其CIDR地址块划分成了2个子网,其中一个给了一系。那么这两个子网分别是:一系的:206.0.68.0/23 = 206.0.0100 0100.0/23和剩余的(记为余1):206.0.70.0/23 =206.0.0100 0110.0/23,注意其中的红色部分就是新增的这一位,用来标志两个子网。
那么,一系的
最小地址是:206.0.68.0/23 = 206.0.0100 0100.0000 0000/23
最大地址是:206.0.69.255/23 = 206.0.0100 0101.1111 1111/23
子网掩码是:255.255.254.0/23 = 1111 1111.1111 1111.1111 1110.0000 0000/23
拥有的地址数:(69-68+1)*(255-0+1)=512
余1的
最小地址是:206.0.70.0/23 = 206.0.0100 0110.0000 0000/23
最大地址是:206.0.71.255/23 = 206.0.0100 0111.1111 1111/23
子网掩码是:255.255.254.0/23 = 1111 1111.1111 1111.1111 1110.0000 0000/23
拥有的地址数:(71-70+1)*(255-0+1)=512
现在,一系的CIDR地址块已经很明确,然后一系内部又进行了划分,即又分为206.0.68.0/25、206.0.68.128/25、206.0.69.0/25和206.0.69.128/25四个子网,网络前缀从23位变成了25位,相当于占用了主机号两位,所以可以划分为4个子网,分别对应00、01、10、11这四个子网,这四个子网的最小地址、最大地址以及子网掩码和拥有的地址数按照上述的方法就可以得到,这个比较简单,建议大家可以自己手动计算一下,正好看看自己掌握了多少,这里就不再给出这四个子网的细节。
第四,一系明确以后,就要考虑其他系的划分,可以看到二系分配到的CIDR地址块是206.0.70.0/24,可以看出来其网络前缀相对于余1的CIDR地址块来说增加了1位,说明余1的CIDR地址块被划分成了2个子网,其中一个给了二系。那么这两个子网分别是:二系的:206.0.70.0/24 = 206.0.0100 0110.0/24和剩余的(记为余2):206.0.71.0/24 =206.0.0100 0111.0/24,注意其中的红色部分就是新增的这一位,用来标志两个子网。
那么,二系的
最小地址是:206.0.70.0/24 = 206.0.0100 0100.0000 0000/24
最大地址是:206.0.70.255/24 = 206.0.0100 0100.1111 1111/24
子网掩码是:255.255.255.0/24 = 1111 1111.1111 1111.1111 1111.0000 0000/24
拥有的地址数:(70-70+1)*(255-0+1)=256
余2的
最小地址是:206.0.71.0/24 = 206.0.0100 0111.0000 0000/24
最大地址是:206.0.71.255/24 = 206.0.0100 0111.1111 1111/24
子网掩码是:255.255.255.0/24 = 1111 1111.1111 1111.1111 1111.0000 0000/24
拥有的地址数:(70-70+1)*(255-0+1)=256
现在,二系的CIDR地址块已经很明确,然后二系内部又进行了划分,即又分为206.0.70.0/26、206.0.70.64/26、206.0.70.128/26和206.0.70.192/26四个子网,网络前缀从24位变成了26位,相当于占用了主机号两位,所以可以划分为4个子网,分别对应00、01、10、11这四个子网,这四个子网的最小地址、最大地址以及子网掩码和拥有的地址数按照上述的方法就可以得到,这个比较简单,建议大家可以自己手动计算一下,正好看看自己掌握了多少,这里就不再给出这四个子网的细节。
第五,二系明确以后,就要考虑其他系的划分,可以看到三系分配到的CIDR地址块是206.0.71.0/25,而四系分配到的CIDR地址块是206.0.71.128/25,可以看出来其网络前缀相对于余2的CIDR地址块来说增加了1位,说明余2的CIDR地址块被划分成了2个子网,其中一个给了三系,另外一个给了四系。那么这两个子网分别是:三系的:206.0.71.0/25 = 206.0.71.0000 0000/25和四系的:206.0.71.128/25 = 206.0.71.1000 0000/25,注意其中的红色部分就是新增的这一位,用来标志两个子网。
那么,三系的
最小地址是:206.0.71.0/25 = 206.0.0100 0100.0000 0000/25
最大地址是:206.0.71.127/25 = 206.0.0100 0100.0111 1111/25
子网掩码是:255.255.255.128/25 = 1111 1111.1111 1111.1111 1111.1000 0000/25
拥有的地址数:(71-71+1)*(127-0+1)=128
四系的
最小地址是:206.0.71.128/25 = 206.0.0100 0100.1000 0000/25
最大地址是:206.0.71.255/25 = 206.0.0100 0100.1111 1111/25
子网掩码是:255.255.255.128/25 = 1111 1111.1111 1111.1111 1111.1000 0000/25
拥有的地址数:(71-71+1)*(255-128+1)=128
现在,三系和四系的CIDR地址块已经很明确,到目前为止,该高校已经将所有的CIDR地址块分配给了四个系,一系有512个地址,二系有256个地址,三系和四系各有128个地址。然后三系内部又进行了划分,即又分为206.0.71.0/26和206.0.71.64/26两个子网,网络前缀从25位变成了26位,相当于占用了主机号一位,所以可以划分为2个子网,分别对应0、1这两个子网,同时,四系内部也又进行了划分,即又分为206.0.71.128/26和206.0.71.192/26两个子网,网络前缀从25位变成了26位,相当于占用了主机号一位,所以可以划分为2个子网,分别对应0、1这两个子网,三系和四系各自的两个子网的最小地址、最大地址以及子网掩码和拥有的地址数按照上述的方法就可以得到,这个比较简单,建议大家可以自己手动计算一下,正好看看自己掌握了多少,这里就不再给出这些子网的细节。
至此,我们已经分析完了本题,上面都是我一位位自己敲上去的,所以大家看完后想要稳固掌握的话建议自己也计算一遍,如果发现我有错误,欢迎大家指正。
最后,我用一副图来展示下这个划分过程。
图4 上述例题的图解