子网掩码快速算法及可变长掩码子网掩码快速算法及可变长掩码(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台机器,设定为192.168.10.0,C类的IP,大子网掩码应为255.255.255.0,对巴,但是我们要分子网,所以按照上面的,我们用32个IP一个子网内不够,应该每个子网用64个IP(其中62位可用,足够了吧),然后用我的办法:子网掩码应该是256-64=192,那么总的子网掩码应该为:255.255.255.192。不相信?算算:0-63,64-127,128-191,192-255,这样你就可以把四个区域分别设定到四个子网的机器上了。(256-掩码)就是分段后每段中的ip数,再计算已知IP在哪个段就可以了。其中段里面的IP第一个IP是网络地址,最后一个是广播地址。比如100.100.100.100255.255.255.240这个ip的网络号和广播地址,以及这个段中的其它地址的计算方法如下:256-240=16,说明分成了几个段以后,每段中的IP地址数量是16个,其中第一个是网络号,最后一个是广播地址100/16=6.x说明100在16x6和16x7之间16x6=96,16x7=112说明100所在的段中第一个地址是96,最后一个是111那就是100.100.100.100255.255.255.240这个ip所在的网段的网络地址是100.100.100.96,广播地址是100.100.100.111可用的IP是100.100.100.97到100.100.100.110如果是一个无类地址172.38.3.40/25的话25是255.255.255.128256-128=128,每段128个,分别是0-127,128-25540是属于第一段,所以网络位是172.38.3.0,广播是172.38.3.127,ip范围是172.38.3.1-172.38.3.126。172.38.3.40/25是一个ip地址,该地址的网络地址是172.38.3.0,广播地址是172.38.3.127,该IP地址所在的段包含的地址范围是172.38.3.1-172.38.3.126,它是B类的,默认是16位的掩码,这里是25位,说明变长子网掩码,它被分为两段,172.138.3.0到172.38.3.127网络号为172.168.3.0,还有一段是172.38.3.128到172.38.3.255网络号为172.168.3.128,你的IP为172.38.3.40,属于172.38.3.0/127这一段的,所以网络号为172.168.3.0155.46.16.88/27子网掩码:255.255.255.224256-224=32所以分为这些段:0~3233~6566~9899~131132~164165~197198~230每段的开头是网络地址每段的结尾是广播地址附:A类0-12708位24位B类128-1911016位16位C类192-22311024位8位D类224-2391110组播地址E类240-2551111保留试验使用更详细的说明:划分子网为了提高IP地址的使用效率,可将一个网络划分为子网:采用借位的方式,从主机位最高位开始借位变为新的子网位,所剩余的部分则仍为主机位。这使得IP地址的结构分为三部分:网络位、子网位和主机位。引入子网概念后,网络位加上子网位才能全局唯一地标识一个网络。把所有的网络位用1来标识,主机位用0来标识,就得到了子网掩码。如下图所示的子网掩码转换为十进制之后为:255.255.255.224子网编址使得IP地址具有一定的内部层次结构,这种层次结构便于IP地址分配和管理。它的使用关键在于选择合适的层次结构--如何既能适应各种现实的物理网络规模,又能充分地利用IP地址空间(即:从何处分隔子网号和主机号)。在思科网络技术学院CCNA教学和考试当中,不少同学在进行IP地址规划时总是很头疼子网和掩码的计算。现在给大家一个小窍门,可以顺利的解决这个问题。首先,我们看一个CCNA考试中常见的题型:一个主机的IP地址是202.112.14.137,掩码是255.255.255.224,要求计算这个主机所在网络的网络地址和广播地址。常规办法是把这个主机地址和子网掩码都换算成二进制数,两者进行逻辑与运算后即可得到网络地址。其实大家只要仔细想想,可以得到另一个方法:255.255.255.224的掩码所容纳的IP地址有256-224=32个(包括网络地址和广播地址),那么具有这种掩码的网络地址一定是32的倍数。而网络地址是子网IP地址的开始,广播地址是结束,可使用的主机地址在这个范围内,因此略小于137而又是32的倍数的只有128,所以得出网络地址是202.112.14.128。而广播地址就是下一个网络的网络地址减1。而下一个32的倍数是160,因此可以得到广播地址为202.112.14.159。CCNA考试中,还有一种题型,要你根据每个网络的主机数量进行子网地址的规划和计算子网掩码。这也可按上述原则进行计算。比如一个子网有10台主机,那么对于这个子网就需要10+1+1+1=13个IP地址。(注意加的第一个1是指这个网络连接时所需的网关地址,接着的两个1分别是指网络地址和广播地址。)13小于16(16等于2的4次方),所以主机位为4位。而256-16=240,所以该子网掩码为255.255.255.240。如果一个子网有14台主机,不少同学常犯的错误是:依然分配具有16个地址空间的子网,而忘记了给网关分配地址。这样就错误了,因为14+1+1+1=17,大于16,所以我们只能分配具有32个地址(32等于2的5次方)空间的子网。这时子网掩码为:255.255.255.224。无类的内部域路由(CIDR)子网掩码CIDR值255.0.0.0/8255.127.0.0/9255.192.0.0/10255.224.0.0/11255.240.0.0/12255.248.0.0/13255.252.0.0/14255.254.0.0/15255.255.0.0/16255.255.128.0/17255.255.192.0/18255.255.224.0/19255.255.240.0/20255.255.248.0/21255.255.252.0/22255.255.254.0/23255.255.255.0/24255.255.255.128/25255.255.255.192/26255.255.255.224/27255.255.255.240/28255.255.255.248/29255.255.255.252/30C类地址的子网划分在一个C类地址中,只有八位是可以用来定义主机的。记住,子网位必须是由左到右进行定义的,这中间,不能跳过某些位。也就是说,C类子网掩码只能是:二进制十进制速记10000000128/2511000000192/2611100000224/2711110000240/2811111000248/2911111100252/3011111110254/31(无效)使用可变长掩码(VariableLengthSubnetMask,VLSM)就是指一个网络可以用不同的掩码进行配置。这样做的目的是为了使把一个网络划分成多个子网更加方便。在没有VLSM的情况下,一个网络只能使用一种子网掩码,这就限制了在给定的子网数目条件下主机的数目。例如你被分配了一个C类地址,网络号为192.168.10.0,而你现在需要将其划分为三个子网,其中一个子网有100台主机,其余的两个子网有50台主机。我们知道一个C类地址有254个可用地址,那么你如何选择子网掩码呢?从上表中我们发现,当我们在所有子网中都使用一个子网掩码时这一问题是无法解决的。此时VLSM就派上了用场,我们可以在100个主机的子网使用255.255.255.128这一掩码,它可以使用192.168.10.0到192.168.10.127这128个IP地址,其中可用主机号为126个。我们再把剩下的192.168.10.128到192.168.10.255这128个IP地址分成两个子网,子网掩码为255.255.255.192。其中一个子网的地址从192.168.10.128到192.168.10.191,另一子网的地址从192.168.10.192到192.168.10.255。子网掩码为255.255.255.192每个子网的可用主机地址都为62个,这样就达到了要求。可以看出合理使用子网掩码,可以使IP地址更加便于管理和控制。某公司有两个主要部门:市场部和技术部。技术部又分为硬件部和软件部两个部门。该公司申请到了一个完整的C类IP地址段:210.31.233.0,子网掩码255.255.255.0。为了便于分级管理,该公司采用了VLSM技术,将原主网络划分称为两级子网(未考虑全0和全1子网)。市场部分得了一级子网中的第1个子网,即210.31.233.64,子网掩码255.255.255.192,该一级子网共有62个IP地址可供分配。技术部将所分得的一级子网中的第2个子网210.31.233.128,子网掩码255.255.255.192又进一步划分成了两个二级子网。其中第1个二级子网210.31.233.128,子网掩码255.255.255.224划分给技术部的下属分部-硬件部,该二级子网共有30个IP地址可供分配。技术部的下属分部-软件部分得了第2个二级子网210.31.233.160,子网掩码255.255.255.224,该二级子网共有30个IP地址可供分配。在实际工程实践中,可以进一步将网络划分成三级或者更多级子网。同时,可以考虑使用全0和全1子网以节省网络地址空间。简单的说,可变长无非就是借位。而借位的基础是在A,B,C三类的基础上而来的。打一个最简单的比方。172.16.0.0/16的网络公司要划分六个子网,首先算出要借几位才能得到六个子网。借一位就是2的1次方,借2位就是2的2次方,依次来推,借六个子网只有2的3次方=8能得到自己所需的六个子网在NA里面不能同时为0或为1所以要减2就是2的3次方减2=6。然后在写出子网掩码。因为/16是B类网络掩码是255.255.0.0/16借了3位就应该是255.255.224.0/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了。那么172.16.32.0/19就是第一个网段了。172.16.64.0/19就是第二个了。第一个网段内的