无敌子网掩码(IP地址)计算方法(完全心算法)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了无敌子网掩码(IP地址)计算方法(完全心算法)相关的知识,希望对你有一定的参考价值。
快速子网掩码(IP地址)计算方法(完全心算法)
由于很多朋友跟我说,对这方法没有看懂,因此我做了一些更新,增加了历年职称考试的试题解答。下面的说明看起来可能会有些累,多看题就懂了,因此我增加了不少题。能看懂的给个好评。
先从掩码看起
我们知道一个C类IP地址段中有256个IP。一个B类地址段中有65536个IP。计算方法为256*256那么一个A类IP地址则有256*256*256个IP。子网掩码分别为255.255.255.0,255.255.0.0,255.0.0.0。
不管是255.X.0.0还是255.255.X.0或者是255.255.255.X我们一般只计算X的部分X部分的总位数一共是8位按以下方法进行划分,掩码部分可以不计。因为掩码部分的计算方法就是权值相加而已。所以只要记住权值就可以了。其实权值也不用记。记规律就行了。
权值 12864 32 16 8 4 2 1
位数 1 1 1 1 1 1 1 1
掩码 128192224240248252254255
我们不管前后。前面全是255,后面全是0。需要计算的位只有8位,就是第X位。
第X位的权值为该网段内IP地址的数量。假设计算第四段的第六位(从前面数),对应的权值是4,下面对应的掩码是252。255.255.255.252或/30前三位为3*8=24然后就数数。数到4就是30位。而权值相加就是252。每一个段的IP数量就是4个(权值)。如果是第三段。也是一样。仍然是用4来计算。255.255.252.0或/22前三位为2*8=16数到4就是22。每一段的IP数量为4*256=1024。网络位的计算方法为除以权值取整数。比如一个IP为192.168.1.13。那么用13除4就是12。12+4为16就是下一个网络位。很明显广播就是15了。IP范围就是12-15。可用IP为13-14需要计算的所有东西一般为。IP数量。网络位。广播地址。子网掩码。
子网汇聚和拆分也是同一个原理。
拆分就只计算掩码位数即可。比如一个24位的掩码可以分为2个25位,4个26位,8个27位,16个28位的网络。反过来聚合就不用解释了。由于子网掩码必须是连续的1,所以下面的X*8+Y的意思为X是有几个255,Y是数到第几位。比如2*8+5的意思为
11111111 11111111 11111000 (这里共有5个1) 00000000
255.255.248.0
下面用例题来说明:
(一)ISP分配给某公司的地址块为199.34.76.64/28,则该公司得到的地址数是(54)。
权值 12864 32 16 8 4 2 1
位数 1 1 1 1 1 1 1 1
掩码 128192224240248252254255
答:28/8=3余4,即3个255,需要计算的是这个4(从前面往后数第4个)。这个4对应的权值是16,所以总地址数为16个。如果要问可用IP则减去2个为14个。如果计算子网掩也可以用256-16仍然等于240.
(二)如果一个公司有2000台主机,则必须给它分配 (52) 个C类网络。为了使该公司网络在路由表中只占一行,指定给它的子网掩码应该是 (53) 。
权值 12864 32 16 8 4 2 1
位数 1 1 1 1 1 1 1 1
掩码 128192224240248252254255
答:1个C类地址有256个IP,C类地址的掩码为255.255.255.0。8个C有2048个IP可以满足2000个。应该向前进位。所以我们需要计算的是255.255.X.0找到权值为8的位。子网掩码为255.255.248.0
(三)由16个C类网络组成一个超网(supernet),其网络掩码(mask)应为 (55) 。
权值 12864 32 16 8 4 2 1
位数 1 1 1 1 1 1 1 1
掩码 128192224240248252254255
答:跟上面的问题几乎一样,问法不同。找到权值16。子网掩码为255.255.240.0
(四)设IP地址为18.250.31.14,子网掩码为255.240.0.0,则子网地址是 (56) 。
权值 12864 32 16 8 4 2 1
位数 1 1 1 1 1 1 1 1
掩码 128192224240248252254255
答:找到240对应的权值是16。说明每16个IP可以分为一段,根据给定的IP计算它属于哪个段,那么每一个段的头也就是网络地址与下一段的头之间必须要包括18.250.31.14这个IP。可以简化一下18.250.X.X。因此我们用250/16取整为240。则网络地址为18.240.0.0。反向认证一下。18.240.0.0-18.255.255.255是它的所有地址。因此包括了18.250.31.14。
(五)网络172.21.136.0/24和172.21.143.0/24汇聚后的地址是 (51) 。
权值 12864 32 16 8 4 2 1
位数 1 1 1 1 1 1 1 1
掩码 128192224240248252254255
答:136-143差距为8有可能就是8个,如果136就是网络地址的话,那么则为8个,否则就得向前进位。那就是16个。这时计算一下最小的地址。136/8=17可以整除。网络地址就可以确定为136然后就查找权值8对应的子网掩码是248。位数是5(从前面往后数第5个)。从IP地址上来看,子网掩码的格式应该为255.255.X.0则有:2*8+5=21
汇聚后地址为172.21.136.0/21
(六)如果子网172.6.32.0/20再划分为172.6.32.0/26,则下面的结论中正确的是 (52) 。
(52)A.划分为1024个子网 B.每个子网有64台主机
C.每个子网有62台主机 D.划分为2044个子网
权值 12864 32 16 8 4 2 1
位数 1 1 1 1 1 1 1 1
掩码 128192224240248252254255
答:通过3*8+2=26(从前面往后数第2个)即子网掩码为255.255.255.192。权值为64。选C每个子网有62台主机。(去掉一个网络地址,去掉一个主机地址。)
此题的另一种解法。
倍数 2 4 8 16 32 64 128256……
位数 1 1 1 1 1 1 1 1 ……
使用26-20=6计算子网掩码的位差。从前往后数第6个。倍数为64。则得出可以划分成64个子网。而任何子网的主机数为2的X次方减2。所以主机数不可能是64。之所以没把倍数放在前面,是怕大家记混了。另外也是因为它并不常用。
(七) 属于网络112.10.200.0/21 的地址是 (48) 。
(48)A.112. 10. 198. 0 B.112. 10. 206. 0 C.112. 10. 217. 0 D.112. 10. 224. 0
权值 12864 32 16 8 4 2 1
位数 1 1 1 1 1 1 1 1
掩码 128192224240248252254255
答:21=2*8+5从前往后数第5位对应的权值为8。那么每个IP段则应该包含8个C类网络。由200/8=25可以整除,因此知道题中给出的是网络地址。那么它的IP范围应该是112.10.200.0-112.10.207.255因此我们得到答案为B。
(八) 设有下面4 条路由:172.18.129.0/24、172.18.130.0/24、172.18.132.0/24 和172.18.133.0/24,如果进行路由汇聚, 能覆盖这4 条路由的地址是 (49) 。
(49)A.172.18.128.0/21 B.172.18.128.0/22 C.172.18.130.0/22 D.172.18.132.0/23
权值 12864 32 16 8 4 2 1
位数 1 1 1 1 1 1 1 1
掩码 128192224240248252254255
要汇聚必先计算IP范围。即最大IP段和最小IP段的差。题中为129-133之间。都是奇数。先把最小的变成偶数。让它为128。128可以 以上是关于无敌子网掩码(IP地址)计算方法(完全心算法)的主要内容,如果未能解决你的问题,请参考以下文章