Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2320723
  • 博文数量: 535
  • 博客积分: 8689
  • 博客等级: 中将
  • 技术积分: 7066
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-26 10:00
文章分类

全部博文(535)

文章存档

2024年(4)

2023年(4)

2022年(16)

2014年(90)

2013年(76)

2012年(125)

2011年(184)

2010年(37)

分类:

2012-05-26 11:11:08



可变长子网掩码(VLSM)快速计算法2012-02-07 12:19:37     我来说两句         [字体: ]我们先来理解以下概念:
 
子网:IP地址均分为网络位和主机位两段,假设一个网络中的主机为450台,那么分配一个C类地址不够用,分配一个B类地址又显得太浪费,在这种情况下,就提出了子网化的概念,子网的定义就是把主机地址中的一部分主机位借用为网络位。如在一个B类地址172.16/16,可以借用7位做为网络地址,一个形如172.16.2/23的地址段就可以满足该网络的需求。其中172.16/16称为主网,172.16.2/23称为子网。
 
 
 
超网:子网化一定程度上减轻了IP地址空间紧张的压力,但是由于在IP地址分配初期的考虑不周全,导致A类、B类地址在初其大量分配,资源相当紧张,而一些中型网络又需要超过一个C的地址,这进只能分配几个连续的C类地址块。为了减小Internet路由表的数量,就提出了超网的概念,超网和子网的定义刚好相反,就是借用一部网络位作为主机位。从而达到减小Internet路由表的目的。如192.168.0/24-192.168.3/24四个C类地址段,就是可超网化为192.168.0/22这样一个超网。
 
 
 
CIDR(无类型域间路由):随着子网和超网概念的深入,IANA在分配IP地址过程中类别的概念越来越淡化,一般情况下就直接以地址块的形式分配地址段,配合路由设备的支持,就出现了无类型域间路由的概念。它是一种工业标准,与IP地址一起使用的,用来显示子网位数。例如,172.16.10.1/24就表示32位子网掩码中有24个1。
 
 
 
简单的说凡是借了位就用到了CIDR,
 
借少了位叫超网,比如:192.168.1.0/22
 
借多了位叫VLSM,比如:192.168.1.0/28
 
 
 
回头来看例子:一个网络中的主机为450台如何使用合适的子网掩码呢?
 
求解:计算出主机位取多少位合适(设主机位位数为n)
 
2的n次方-2大于或等于450  得出n取9 
 
2的9次方是512,当然大于450,这里为什么还要减2呢?因为,还要去掉一个网络网络地址(头)和一个广播地址(尾)
 
(当然,有些东西要死记,比如2的一次方直到2的10次方是多少)
 
那子网掩码即是11111111.11111111.11111110.00000000 换成十进制是255.255.254.0
 
这样说不难看懂吧?让我们多做些题加深印象!
 
 
 
下面就开始说说VLSM题的类型:
 
第一类题的类型
 
基本:
 
A.已知网络地址,求主机地址。
 
B.已知主机地址,求网络地址。
 
衍生:
 
C.已知主机地址,求主机地址
 
D.已知网络地址,求广播地址。
 
 
 
记住了VLSM的类型题,挺有用的。
 
A类例题:已知网络地址,求主机地址。
 
Which two of the addresses below are available for host addresses on the subnet 192.168.15.19/28? (Select two answer choices)
 
A. 192.168.15.17
 
B. 192.168.15.14
 
C 192.168.15.29
 
D. 192.168.15.16
 
E. 192.168.15.31
 
F. None of the above
 
Answer: A, C
 
解析:
 
题的要求是哪两个可用的主机地址是在子网192.168.15.19/28中的。
 
这道题的CIDR是/28 ,一个标准的C类子网掩码是/24,所以对于/24来说,/28是借了4位主机位给网络位,借出来的网络位就叫做子网了。大家想想,借了4位子网,写成二进制为11111111. 11111111. 11111111.11110000,那么对于二进制来说,红色标识的4个1加起来得多少呢,是128+64+32+16=240。所以/28的子网掩码是255.255.255.240。其实你要看的是最后一个数,255.255.255.x这前三个255都不用去看,重点是最后一个数240,这才是解题要的信息。
 
第二步,现在引入一个新的数字256,用256减去我们在第一步求得的240,得多少呢,是16。呵呵,能算出16就离答案不远,解题的关键就出来了。(这一方法是我从《CCNA学习指南第5版》的第三章学到的,让我可以一看到VLSM的题就信心大增,希望此方法你能理解,学会,相信会受益匪浅的)
 
第三步,16是什么意思呢,这么说吧,首先我们先明白, 对于C类的网段,都是一个网段有255个IP地址的,(如果不理解,可以想想你是如何配置自己电脑的IP地址。)那么这个16就把255划分成每16为一块,0、16、32、48、64、80、96、112、128、……、240,这些数又是什么呢,我可以告诉你,他们就是网络地址,能知道网络地址是十分有用的,网络地址是用来标识一个网段的。比如说192.168.15.0/28,这个网段是从192.168.15.0到192.168.15.15的,简化来说就是从0~15。在一个网段中我们要考虑的是哪个是网络地址、哪个是广播地址,那么剩余的就是我们经常要去求的主机地址。正如我前面所说的0、16、32、48、64、80、96、112、128、……、240,这些数就是网络地址,那么广播地址是哪些呢,其实就是该网段的最后一个IP地址。举个例子,32网段的广播地址是47,48网段的广播地址是63。这里再说一句,32网段的下一个网段是48号网段,相信这个大家都没有问题,我想说的是求该网段的广播地址其实就是下一个网段的网络地址的前一个地址,这里举个地址,我要求32网段的广播地址,其实就是32网段的下一个网段的前一个地址,即48减一,即47。所以说知道了网络地址后,广播地址也会相应的出现,对于/28划分的网段来说,广播地址是:15、31、47、63、79、95、111、127、……、239、255。
 
说到这里才终于可以对题讲解了,192.168.15.19/28这个地址,我们可以知道19这个主机号是归属于16这个网络地址的,而16这个网络地址的范围是16~31,但16是网络号、31是广播地址,所以可用主机的范围是17~30。所以A选项正确;B选项不在范围内,排除;C选项正确:D选项是网络地址,不可以选;E选项是广播地址,不可以选;所以答案选择A、C。
 
 
 
这就是对VLSM解题的方法,这里总结一些对VLSM的解题步骤:
 
1.       要敏感的看到/? ,然后展开成子网。比如C类的/27 ,借了3位,即192+64+32=224。
 
2.       用256做减法。比如256减224,得“块数”32。解题的关键点就出来了。
 
3.       有了块后,解题就开始了。
 
 
 
现在你试试做下面的这道题,方法一样:
 
Your ISP has assigned you the following IP address and subnet mask:
 
IP address: 199.141.27.0
 
Subnet mask: 255.255.255.240
 
Which of the following addresses can be allocated to hosts on the resulting subnet? (Select all that apply)
 
A. 199.141.27.2
 
B. 199.141.27.175
 
C. 199.141.27.13
 
D. 199.141.27.11
 
E. 199.141.27.208
 
F. 199.141.27.112
 
Answer: A, C, D
 
做出来了么,如果觉得自己还有可能做出来就不要看我的解释先。
 
通过自己的努力自己的双手做出来的题是十分兴奋,高兴的~~不知道你是否有同感呢。
 
好了,下面讲这道题的解析:
 
看到Subnet mask: 255.255.255.240这句话没,这个子网的关键词是240。(这就是上面讲的步骤的第一步),然后用256减240,得【块】16,第二步出来,解题的插入点就出来了。第三步,有了块后,解题开始,看到IP address: 199.141.27.0这句话没,通过块16,可以推出0网段的范围是0~15,所以A、C、D都是正确的,而B、D、E、F都不在0网段的0~15这个范围内。到这里,解题就算结束了。
 
 
 
B类例题: 已知主机地址,求网络地址。
 
What is the subnet for the host IP address 201.100.5.68/28?
 
A. 201.100.5.0
 
B. 201.100.5.32
 
C. 201.100.5.64
 
D. 201.100.5.65
 
E. 201.100.5.31
 
F. 201.100.5.1
 
Answer: C
 
解析:
 
这道题是已知可用的IP地址来求出该地址的网络地址。这种题的解法同A类题正好相反,但解题的步骤是一样的。
 
1.首先进入你眼帘的应该是/28,按照VLSM的解题步骤,第一步可以知道,借4位可以算出240。
 
2.用256减240,得“块数”16。解题的插入点就出来了。
 
3.解题开始:
 
看看下面的这个表,可以直观的知道68这个主机是在64这个网段内的,所以答案就出来了,选C。
 
 
 
 
 
下面的这道题,是一道B类地址的题,我想有必要讲讲:
 
A TestKing PC has the IP address 172.16.209.10 /22. What is the subnet of this address?
 
A. 172.16.42.0
 
B. 172.16.107.0
 
C. 172.16.208.0
 
D. 172.16.252.0
 
E. 172.16.254.0
 
Answer: C
 
不知道你有没有注意到,前面的题都是C类的,并且我也在每道题上声明清楚了。而现在摆在我们面前的是一道B类地址的题,怎么知道这是一个B类的地址呢,你注意到题中的IP地址172.16.209.10 /22的头,172没有,就是由它来决定是不是B类地址的。那前面的C类呢,呵呵,其实就是192、199、201,这是头来确定它是C类的。那么我现在知道172是一个B类的地址后,又有什么用呢,这里先需要你记住B类默认的子网掩码是/16。所以本题中/22对于/16来说,借了6位。(PS:在本题的最后,我会拓展整理A类、B类、C类地址的范围给大家看。)
 
那么现在要做的是用VLSM三步解题法来解这道题。
 
第一步,要继续敏感的看到/22,知道了是借6位,即128+64+32+16+8+4=252
 
第二步,用256来减252,得出“块数”4。解题的插入点就出来了。
 
第三步,解题开始:
 
我们得出以4为一个网段,即:
 
0.0、4.0、8.0、12.0、16.0、……、200.0、204.0、208.0、212.0、……、240.0
 
从这些数中你应该能发现:
 
209.10是归宿于208.0网段的。所以,答案选择C。
 
 
 
自己仔细比较B类和C类的需别。当你能了解172.16.208.255/22是一个主机地址而不是广播地址时,就证明你对B类的VLSM没有问题了。
 
 
 
【扩展】:
 
A类地址范围:0~126,例如:1.1.1.1,10.1.1.2
 
B类地址范围:127~191,例如:172.16.0.1,191.2.2.1
 
C类地址范围:192~223,例如:192.168.0.1,202.111.222.1
 
D类和E类的可以不用管。
 
注意到没有,是哪一类地址是由头来决定的,别的都不用管。知道了是哪一类地址就可以知道该IP地址的默认子网掩码。A类默认的子网掩码是/8,B类默认的子网掩码是/16,而C类默认的子网掩码是/24,这样我们就可以根据题来知道是借了多少位,VLSM三步解题法的第一步就有保障了。
 
 
 
If a host on a network has the address 172.16.45.14/30, what is the address of the subnetwork to which this host belongs?
 
A. 172.16.45.0
 
B. 172.16.45.4
 
C. 172.16.45.8
 
D. 172.16.45.12
 
E. 172.16.45.18
 
Answer: D
 
解析:          
 
这道题做出来了么,如果觉得自己还有可能做出来我建议还是就不要看我的解释先。
 
下面是我的快速用VLSM三步解题法的思路:
 
1. /30,借14位,得255.252。
 
2.神奇的256一减252得“块数”4,解题的插入点就出来了。
 
3.解题开始,具体问题具体分析:
 
题的要求是已知主机地址求该主机地址的子网地址。
 
那么最接近14的这个主机地址的子网是什么呢,0、4、8、12、……,其实就是12。所以答案是选择D。
 
 
 
C类型题:已知主机地址,求主机地址
 
 
 
 
 
Of the following choices, which IP address should be assigned to the PC host?
 
A. 192.168.5.5
 
B. 192.168.5.32
 
C. 192.168.5.40
 
D. 192.168.5.63
 
E. 192.168.5.75
 
Answer: C.
 
解析:
 
这种题就是比较实际的题了,运用前面所讲的知识和VLSM三步解题法就可以求出答案。这种题一定要会,一定要理解,现实中会遇到。
 
的接口地址是:192.168.5.33/27
 
VLSM三步解题法:
 
1.           依然要敏感的看到/27,得出掩码224。
 
2.           用256减224,得出“块数”32。解题的插入点就出来了。
 
3.           解题开始:
 
题的要求是配置一个IP地址给PC机。大家想想,PC机是和路由器直连的,你要让PC机能够访问到路由器,即192.168.5.33这个IP地址,那就要让PC机的IP地址和路由器的IP地址192.168.5.33在同一网段内。这点很重要,很需要理解的。(如果还是不理解,可以想想你在宿舍是如何连接起局域网的,很重要的一点就是要让每台机子的IP地址都在同一网段内。)
 
所以最接近33这个地址的网络地址是块数32,即网络地址为192.168.5.32/27,这个网络地址的范围是32~63。其中32是网络地址,63是广播地址,33~62是主机地址。
 
所以说答案就从33~62里找吧,当然,33这个主机已经给路由器的接口用了,所以应该是从34~62这些地址里找,答案选C。A选项不在范围内;B选项是网络地址;D选项是广播地址;而E选项不在范围内。
 
源自--百度文库
 
阅读(1464) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~