子网掩码快速算法及可变长掩码.doc_第1页
子网掩码快速算法及可变长掩码.doc_第2页
子网掩码快速算法及可变长掩码.doc_第3页
子网掩码快速算法及可变长掩码.doc_第4页
子网掩码快速算法及可变长掩码.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

子网掩码快速算法及可变长掩码子网掩码快速算法及可变长掩码(VLSM)(有资料均从网络上摘抄汇总,有耐心看下去就能明白,CIDR部分看起来比较费劲 如果你希望每个子网中只有5个ip地址可以给机器用,那么你就最少需要准备给每个子网7个ip地址,因为需要加上两头的不可用的网络和广播ip,所以你需要选比7多的最近的那位,也就是8,为什么比7多的是8,不是9,10或者其它的呢?这是因为只能选择2的N次方,也就是0,2,4,8,16,32,64,128这几个数,就是说选每个子网8个ip。好,到这一步,你就可以算掩码了,这个方法就是:最后一位掩码就是256减去你每个子网所需要的ip地址的数量,那么这个例子就是256-8=248,那么算出这个,你就可以知道那些ip是不能用的了,看:0-7,8-15,16-23,24-31依此类推,写在上面的0、7、8、15、16、23、24、31(依此类推)都是不能用的,你应该用某两个数字之间的IP,那个就是一个子网可用的IP。再拿200台机器分成4个子网来做例子吧。200台机器,4个子网,那么就是每个子网50台机器,设定为,C类的IP,大子网掩码应为,对巴,但是我们要分子网,所以按照上面的,我们用32个IP一个子网内不够,应该每个子网用64个IP(其中62位可用,足够了吧),然后用我的办法:子网掩码应该是256-64=192,那么总的子网掩码应该为:92。不相信?算算:0-63,64-127,128-191,192-255,这样你就可以把四个区域分别设定到四个子网的机器上了。(256-掩码)就是分段后每段中的ip数,再计算已知IP在哪个段就可以了。其中段里面的IP第一个IP是网络地址,最后一个是广播地址。比如00 40这个ip的网络号和广播地址,以及这个段中的其它地址的计算方法如下:256-240=16,说明分成了几个段以后,每段中的IP地址数量是16个,其中第一个是网络号,最后一个是广播地址100/16=6.x说明100在16x6和16x7之间16x6=96,16x7=112说明100所在的段中第一个地址是96,最后一个是111那就是00 40这个ip所在的网段的网络地址是6,广播地址是11可用的IP是7到10如果是一个无类地址0/25的话25是28256-128=128,每段128个,分别是0-127,128-25540是属于第一段,所以网络位是,广播是27,ip范围是-26。0/25是一个ip地址,该地址的网络地址是,广播地址是27,该IP地址所在的段包含的地址范围是26,它是B类的,默认是16位的掩码,这里是25位,说明变长子网掩码,它被分为两段,到27网络号为,还有一段是28到55网络号为28,你的IP为0,属于/127这一段的,所以网络号为8/27子网掩码:24256-224=32所以分为这些段:032 3365 6698 99131 132164 165197 198230每段的开头是网络地址每段的结尾是广播地址附:A类 0127 0 8位 24位B类 128191 10 16位 16位C类 192223 110 24位 8位D类 224239 1110 组播地址E类 240255 1111 保留试验使用更详细的说明:划分子网为了提高IP地址的使用效率,可将一个网络划分为子网:采用借位的方式,从主机位最高位开始借位变为新的子网位,所剩余的部分则仍为主机位。这使得IP地址的结构分为三部分:网络位、子网位和主机位。引入子网概念后,网络位加上子网位才能全局唯一地标识一个网络。把所有的网络位用1来标识,主机位用0来标识,就得到了子网掩码。如下图所示的子网掩码转换为十进制之后为:24子网编址使得IP地址具有一定的内部层次结构,这种层次结构便于IP地址分配和管理。它的使用关键在于选择合适的层次结构-如何既能适应各种现实的物理网络规模,又能充分地利用IP地址空间(即:从何处分隔子网号和主机号)。在思科网络技术学院CCNA教学和考试当中,不少同学在进行IP地址规划时总是很头疼子网和掩码的计算。现在给大家一个小窍门,可以顺利的解决这个问题。首先,我们看一个CCNA考试中常见的题型:一个主机的IP地址是37,掩码是24,要求计算这个主机所在网络的网络地址和广播地址。常规办法是把这个主机地址和子网掩码都换算成二进制数,两者进行逻辑与运算后即可得到网络地址。其实大家只要仔细想想,可以得到另一个方法:24的掩码所容纳的IP地址有25622432个(包括网络地址和广播地址),那么具有这种掩码的网络地址一定是32的倍数。而网络地址是子网IP地址的开始,广播地址是结束,可使用的主机地址在这个范围内,因此略小于137而又是32的倍数的只有128,所以得出网络地址是28。而广播地址就是下一个网络的网络地址减1。而下一个32的倍数是160,因此可以得到广播地址为59。CCNA考试中,还有一种题型,要你根据每个网络的主机数量进行子网地址的规划和计算子网掩码。这也可按上述原则进行计算。比如一个子网有10台主机,那么对于这个子网就需要1011113个IP地址。(注意加的第一个1是指这个网络连接时所需的网关地址,接着的两个1分别是指网络地址和广播地址。)13小于16(16等于2的4次方),所以主机位为4位。而25616240,所以该子网掩码为40。如果一个子网有14台主机,不少同学常犯的错误是:依然分配具有16个地址空间的子网,而忘记了给网关分配地址。这样就错误了,因为1411117 ,大于16,所以我们只能分配具有32个地址(32等于2的5次方)空间的子网。这时子网掩码为:24。无类的内部域路由(CIDR)子网掩码 CIDR值 /8 /9 /10 /11 /12 /13 /14 /15 /16 /17 /18 /19 /20 /21 /22 /23 /2428 /2592 /2624 /2740 /2848 /2952 /30C类地址的子网划分在一个C类地址中,只有八位是可以用来定义主机的。记住,子网位必须是由左到右进行定义的,这中间,不能跳过某些位。也就是说,C类子网掩码只能是:二进制 十进制 速记10000000 128 /2511000000 192 /2611100000 224 /2711110000 240 /2811111000 248 /2911111100 252 /3011111110 254 /31(无效)使用可变长掩码(Variable Length Subnet Mask,VLSM)就是指一个网络可以用不同的掩码进行配置。这样做的目的是为了使把一个网络划分成多个子网更加方便。在没有VLSM的情况下,一个网络只能使用一种子网掩码,这就限制了在给定的子网数目条件下主机的数目。例如你被分配了一个C类地址,网络号为,而你现在需要将其划分为三个子网,其中一个子网有100台主机,其余的两个子网有50台主机。我们知道一个C类地址有254个可用地址,那么你如何选择子网掩码呢?从上表中我们发现,当我们在所有子网中都使用一个子网掩码时这一问题是无法解决的。此时VLSM就派上了用场,我们可以在100个主机的子网使用28这一掩码,它可以使用到27这128个IP地址,其中可用主机号为126个。我们再把剩下的28到55这128个IP地址分成两个子网,子网掩码为92。其中一个子网的地址从28到91,另一子网的地址从92到55。子网掩码为92每个子网的可用主机地址都为62个,这样就达到了要求。可以看出合理使用子网掩码,可以使IP地址更加便于管理和控制。某公司有两个主要部门:市场部和技术部。技术部又分为硬件部和软件部两个部门。该公司申请到了一个完整的C类IP地址段:,子网掩码。为了便于分级管理,该公司采用了VLSM技术,将原主网络划分称为两级子网(未考虑全0和全1子网)。市场部分得了一级子网中的第1个子网,即4,子网掩码92,该一级子网共有62个IP地址可供分配。技术部将所分得的一级子网中的第2个子网28,子网掩码92又进一步划分成了两个二级子网。其中第1个二级子网28,子网掩码24划分给技术部的下属分部-硬件部,该二级子网共有30个IP地址可供分配。技术部的下属分部-软件部分得了第2个二级子网60,子网掩码24,该二级子网共有30个IP地址可供分配。在实际工程实践中,可以进一步将网络划分成三级或者更多级子网。同时,可以考虑使用全0和全1子网以节省网络地址空间。简单的说,可变长无非就是借位。而借位的基础是在A,B,C三类的基础上而来的。打一个最简单的比方。/16的网络公司要划分六个子网,首先算出要借几位才能得到六个子网。借一位就是2的1次方,借2位就是2的2次方,依次来推,借六个子网只有2的3次方=8能得到自己所需的六个子网在NA里面不能同时为0或为1所以要减2就是2的3次方减2=6。然后在写出子网掩码。因为/16是B类网络掩码是/16借了3位就应该是/19写二进制清楚点就是:11111111.11111111.00000000.00000000/1611111111.11111111.11100000.00000000/19要算多少个主机的话就看后面有多少个0这里是32-19=13这里的主机就是有2的13次方-2得到有多少主机地址。接着在来算有哪些合法的子网。用256减去借位得来的224就是256-224=32这也叫分段的基数。32也就是第一个子网了。第二个子网就是32+32=64,第三个就是64+32=96依次算六个出来就OK了。那么/19就是第一个网段了。/19就是第二个了。第一个网段内的第一个主机就是;最后一个主机就是54了广播是55.这样就可以得出来你所要的了。CIDR(发音为“cider”)从网络位借位给主机,和vlsm正好相反,允许一组ip网络对其他的路由器看来好象为一个实体,只有 网络位 和 主机位 来区别不同的IP 不考虑分类(A,B,C,D,E),ISP常用这样的方法给客户分配地址,ISP提供给客户1个块,类似2/28无类域间路由(Classless Inter-Domain Routing,CIDR)在RFC 1517RFC 1520中都有描述。提出CIDR的初衷是为了解决IP地址空间即将耗尽(特别是B类地址)的问题。CIDR并不使用传统的有类网络地址的概念,即不再区分A、B、C类网络地址。在分配IP地址段时也不再按照有类网络地址的类别进行分配,而是将IP网络地址空间看成是一个整体,并划分成连续的地址块。然后,采用分块的方法进行分配。在CIDR技术中,常使用子网掩码中表示网络号二进制位的长度来区分一个网络地址块的大小,称为CIDR前缀。如IP地址,子网掩码可表示成/24;IP地址8,子网掩码可表示成8/16;IP地址,子网掩码40可表示成/28等。CIDR可以用来做IP地址汇总(或称超网,Super netting)。在未作地址汇总之前,路由器需要对外声明所有的内部网络IP地址空间段。这将导致Internet核心路由器中的路由条目非常庞大(接近10万条)。采用CIDR地址汇总后,可以将连续的地址空间块总结成一条路由条目。路由器不再需要对外声明内部网络的所有IP地址空间段。这样,就大大减小了路由表中路由条目的数量。例如,某公司申请到了1个网络地址块(共8个C类网络地址):/24-/24,为了对这8个C类网络地址块进行汇总,采用了新的子网掩码,CIDR前缀为/21。如图2所示。可以看出,CIDR实际上是借用部分网络号充当主机号的方法。在图2中,因为8个C类地址网络号的前21位完全相同,变化的只是最后3位网络号。因此,可以将网络号的后3位看成是主机号,选择新的子网掩码为 (1111,1000),将这8个C类网络地址汇总成为/21。利用CIDR实现地址汇总有两个基本条件:待汇总地址的网络号拥有相同的高位。如图2-2-8中8个待汇总的网络地址的第3个位域的前5位完全相等,均为11100。待汇总的网络地址数目必须是2n,如2个、4个、8个、16个等等。否则,可能会导致路由黑洞(汇总后的网络可能包含实际中并不存在的子网)。CIDR作用用于帮助减缓IP地址耗尽和路由表增大问题的一项技术。CIDR的理念是多个C类地址块可以被组合或聚合在一起以生成更大的无类别IP地址集。这些多个C类地址可以在路由表中被归纳,从而减少了路由通告。CIDR举例从/24到/24的C类网络地址被使用,并且被通告到ISP的路由器。当ISP路由器向外界通告路由时,它能够将这些C类网络的路由归纳为一条路由而不必分别通告这8个C类网络。通过通告路由/21,ISP路由器指明他能够到达与地址的前21比特相同的所有目的地址。/bbs/viewthread.php?tid=350597772这贴有CCNP的教材,头大头大 图片1.jpg (21.93 KB)2009-5-4 10:36几个公式变量的说明:Subnet_block:可分配子网块大小,指在某一子网掩码下的子网的块数。Subnet_num:实际可分配子网数,指可分配子网块中要剔除首、尾两块,这是某一子网掩码下可分配的实际子网数量,它等于Subnet_block-2。IP_block:每个子网可分配的IP地址块大小。IP_num:每个子网实际可分配的IP地址数,因为每个子网的首、尾IP地址必须保留(一个为网络地址,一个为广播地址),所以它等于IP_block-2,IP_num也用于计算主机段M:子网掩码(net mask)。它们之间的公式如下:M=256-IP_blockIP_block=256/Subnet_block,反之Subnet_block=256/IP_blockIP_num=IP_block-2Subnet_num=Subnet_block-22的冥数:要熟练掌握28(256)以内的2的冥代表的十进制数,如128=27、64=26,这可使我们立即推算出Subnet_block和IP_block数。现在我们举一些例子:一、 已知所需子网数12,求实际子网数解:这里实际子网数指Subnet_num,由于12最接近2的冥为16(24),即 Subnet_block=16,那么Subnet_num=16-2=14,故实际子网数为14。二、已知一个B类子网每个子网主机数要达到60x255(约相当于X.Y.0.1-X.Y.59.254的数量)个,求子网掩码。解:1、60接近2的冥为64(26),即,IP_block=642、子网掩码M=256-IP_block=256-64=1923、子网掩码格式B类是:255.255.M.0.所以子网掩码为:三、 如果所需子网数为7,求子网掩码 (仔细看这里,和我们考试的差不多)解:1、7最接近2的冥为8,但8个Subnet_block因为要保留首、尾2个子网块,即 8-2=67,并不能达到所需子网数,所以应取2的冥为16,即Subnet_block=162、IP_block=256/Subnet_block=256/16=163、子网掩码M=256-IP_block=256-16=240。四、 已知网络地址为,要有4个子网,求子网掩码及主机段。解:1、211.y.y.y是一个C类网,子网掩码格式为255.255.255.M2、4个子网,4接近2的冥是8(23),所以Subnet_block=8Subnet_num=8-2=63、IP_block=256/Subnet_block=256/8=324、子网掩码M=256-IP_block=256-32=2245、所以子网掩码表示为246、因为子网块(Subnet_block)的首、尾两块不能使用,所以可分配6个子网块(Subnet_num),每块32个可分配主机块(IP_block)即:32-63、64-95、96-127、128-159、160-191、192-223首块(0-31)和尾块(224-255)不能使用7、每个子网块中的可分配主机块又有首、尾两个不能使用(一个是子网网络地址,一个 是子网广播地址),所以主机段分别为:33-62、65-94、97-126、129-158、161-190、193-2228、所以子网掩码为24主机段共6段为:3-25-47-2629-5861-9093-22可以任选其中的4段作为4个子网。-A类地址必须以0开头,如:0XXXXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXXB类地址必须以10开头,如:10XXXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXXC类地址必须以110开头,如:110XXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXXD类地址必须以1110开头,如:1110XXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX-举例说明该算法。例:给定一 class c address : ,要求划分20个子网,每个子网5个主机。解:因为4 5 即是所求的子网掩码,对应的子网数也就出来了。这是针对C类地址。老师也只讲了针对C类地址的做法。下面是我自己推出来的针对B类地址的做法。对于B类地址,假如主机数小于或等于254,与C类地址算法相同。对于主机数大于254的,如需主机 700台,50个子网(相当大了), 512 700即是所求的子网掩码,对应的子网数也就出来了。上面2564中的4(2的2次幂)是指主机数用2进制表示时超过8位的位数,即超过2位,掩码为剩余的前6位,即子网数为2(6)262个。图片2.jpg (51.94 KB)2009-5-4 10:36-需要进行子网规划一般两种情况:一、给定一个网络,整网络地址可知,需要将其划分为若干个小的子网二、全新网络,自由设计,需要自己指定整网络地址后者多了一个根据主机数目确定主网络地址的过程,其他一样。我们先来讨论第一种情况:例:学院新建4个机房,每个房间有25台机器,给定一个网络地址空间:,现在需要将其划分为4个子网。分析:是一个C类的IP地址,标准掩码为:图片3.jpg (38.33 KB)2009-5-4 10:36我们来看要求:4个机房,每个房间有25台机器,那就是需要4个子网,每个子网下面最少25台主机。考虑扩展性,一般机房能容纳机器数量是固定的,建设好之后向机房增加机器的情况较少,增加新机房(新子网)情况较多。(当然对于我们这题,考虑主机或子网最后的结果都是相同的,但如果要组建较大规模网络的时候,这点要特别注意。)我们依据子网内最大主机数来确定借几位。使用公式2n-2 = 最大主机数2n-2 = 2525-2 = 30 = 25所以主机位数n为:5相对应的子网需要借3位图片4.jpg (37.41 KB)2009-5-4 10:36确定了子网部分,后面就简单了,前面的网络部分不变,看最后的这8位图片5.jpg (54.51 KB)2009-5-4 10:36得到6个可用的子网地址:全部转换为点分十进制表示11000000 10101000 0000101000100000 = 211000000 10101000 0000101001000000 = 411000000 10101000 0000101001100000 = 611000000 10101000 0000101010000000 = 2811000000 10101000 0000101010100000 = 6011000000 10101000 0000101011000000 = 92子网掩码:11111111 11111111 1111111111100000 = 255.255.255

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论