您的当前位置:首页正文

子网掩码的及其快速计算方法

2021-04-21 来源:小奈知识网
子网掩码及其快速计算方法

一、 设置方法和作用

你一定对 IP 地址有所了解吧?我们知道在 INTERNET中广泛使用的 TCP/IP 协议就是利用 IP 地址来区别不 同的主机的。如果你曾经进行过 TCP/IP 协议设置,那么你一定会遇到子网掩码(Subnet mask)这一名词,那么 你知道什么是子网掩码吗?它有什么作用呢?

我们知道 IP 地址是一个 4 字节(共 32bit)的数字,被分为 4 段,每段 8位,段与段之间用句点分隔。为了 便于表达和识别,IP 地址是以十进制形式表示的如 210.52.207.2,每段所能表示的十进制数最大不超过 255。 IP 地址由两部分组成,即网络号(Network ID)和主机号(Host ID)。网络号标识的是 Internet 上的一个子 网,而主机号标识的是子网中的某台主机。网际地址分解成两个域后,带来了一个重要的优点:IP 数据包从 网际上的一个网络到达另一个网络时,选择路径可以基于网络而不是主机。在大型的网际中,这一点优势特 别明显,因为路由表中只存储网络信息而不是主机信息,这样可以大大简化路由表。IP 地址根据网络号和主 机号的数量而分为 A、B、C 三类: 

A类 IP 地址:用 7 位(bit)来标识网络号,24 位标识主机号,最前面一位为\"0\",即 A类地址的第一段取值 介于 1~126之间。A类地址通常为大型网络而提供,全世界总共只有 126 个只可能的 A类网络,每个A类 网络最多可以连接 16777214 台主机。 

B 类 IP 地址:用 14 位来标识网络号,16 位标识主机号,前面两位是\"10\"。B 类地址的第一段取值介于 128~ 191 之间,第一段和第二段合在一起表示网络号。B类地址适用于中等规模的网络,全世界大约有16000 个B 类网络,每个 B 类网络最多可以连接 65534 台主机。 

C 类 IP 地址:用 21 位来标识网络号,8 位标识主机号,前面三位是\"110\"。C 类地址的第一段取值介于 192~ 223 之间,第一段、第二段、第三段合在一起表示网络号。最后一段标识网络上的主机号。C类地址适用于 校园网等小型网络,每个 C 类网络最多可以有 254台主机。

从上面的介绍我们知道,IP 地址是以网络号和主机号来标示网络上的主机的,只有在一个网络号下的计算机 之间才能\"直接\"互通,不同网络号的计算机要通过网关(Gateway)才能互通。但这样的划分在某些情况下显 得并十分不灵活。为此 IP 网络还允许划分成更小的网络,称为子网(Subnet),这样就产生了子网掩码。子 网掩码的作用就是用来判断任意两个 IP 地址是否属于同一子网络,这时只有在同一子网的计算机才能\"直接\" 互通。那么怎样确定子网掩码呢?

前面讲到 IP 地址分网络号和主机号,要将一个网络划分为多个子网,因此网络号将要占用原来的主机位,如 对于一个 C 类地址,它用 21 位来标识网络号,要将其划分为 2个子网则需要占用1 位原来的主机标识位。 此时网络号位变为22位为主机标示变为7位。 同理借用2个主机位则可以将一个C类网络划分为4个子网…… 那计算机是怎样才知道这一网络是否划分了子网呢?这就可以从子网掩码中看出。 子网掩码和 IP 地址一样有 32bit,确定子网掩码的方法是其与 IP 地址中标识网络号的所有对应位都用\"1\",而与主机号对应的位都是\"0\"。 如分为2个子网的C类IP地址用22位来标识网络号, 则其子网掩码为:11111111 11111111 11111111 10000000  即 255.255.255.128。于是我们可以知道,A类地址的缺省子网掩码为 255.0.0.0,B 类为 255.255.0.0,C 类为 255.255.255.0。下表是 C 类地址子网划分及相关子网掩码:

子网位数 子网掩码 1 2 3 4 5 6 2 个 4个 8个 255.255.255.128 255.255.255.192 255.255.255.224 主机数 128 64 32 16 8 4 可用主机数 126 62 30 14 6 2 16个 255.255.255.240 32个 255.255.255.248 64个 255.255.255.252 你可能注意到上表分了主机数和可用主机数两项,这是为什么呢?因为但当地址的所有主机位都为\"0\"时,这 一地址为线路(或子网)地址,而当所有主机位都为\"1\"时为广播地址。

同时我们还可以使用可变长掩码(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 地址更加便于管理和控制。

二、子网掩码的快速算法

很多人肯定对设定子网掩码这个不熟悉,很头疼,那么我现在就告诉大家一个很容易算子网掩码的方法, 帮助一下喜欢偷懒的人:)

大家都应该知道2 的 0 次方到 10 次方是多少把?也给大家说一下,分别是: 1 2 4 8 16 32 64 128 256 512 1024。

如果你希望每个子网中只有 5 个 ip地址可以给机器用,那么你就最少需要准备给每个子网 7 个 ip地址, 因为需要加上两头的不可用的网络和广播 ip,所以你需要选比 7多的最近的那位,也就是 8,就是说选每个 子网 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,这样你就可以把四个区域分 别设定到四个子网的机器上了, 是不是很简单?不需要软件算了吧。。。 呵呵。。 希望大家能看懂我写的。。。。

子网掩码 

RFC 950 定义了子网掩码的使用,子网掩码是一个 32 位的 2 进制数,其对应网络地址的所有位 都置为 1,对应于主机地址的所有位都置为 0。由此可知,A 类网络的默认子网掩码是 255.0.0.0,B 类网络的默认子网掩码是 255.255.0.0,C 类网络的默认子网掩码是 255.255.255.0。将子网掩码和 IP 地址按位进行逻辑“与”运算,得到 IP 地址的网络地址,剩下的部分就是主机地址,从而区分出任意 IP 地址中的网络地址和主机地址。子网掩码常用点分十进制表示,我们还可以用网络前缀法表示子网 掩码,即“/<网络地址位数>”。如 138.96.0.0/16 表示 B 类网络 138.96.0.0 的子网掩码为 255.255.0.0。

路由器判断 IP 子网掩码告知路由器,地址的哪一部分是网络地址,哪一部分是主机地址,使路由器正确判断任 意 IP 地址是否是本网段的, 从而正确地进行路由。 例如, 有两台主机, 主机一的 IP 地址为 222.21.160.6, 子网掩码为 255.255.255.192,主机二的 IP 地址为 222.21.160.73,子网掩码为 255.255.255.192。现在 主机一要给主机二发送数据,先要判断两个主机是否在同一网段。

主机一 

222.21.160.6 即:11011110.00010101.10100000.00000110 255.255.255.192 即:11111111.11111111.11111111.11000000 按位逻辑与运算结果为: 11011110.00010101.10100000.00000000 主机二 

222.21.160.73 即:11011110.00010101.10100000.01001001 255.255.255.192 即:11111111.11111111.11111111.11000000 按位逻辑与运算结果为:11011110.00010101.10100000.01000000 

两个结果不同,也就是说,两台主机不在同一网络,数据需先发送给默认网关,然后再发送给主 机二所在网络。那么,假如主机二的子网掩码误设为 255.255.255.128,会发生什么情况呢?

让我们将主机二的 IP 地址与错误的子网掩码相“与”: 222.21.160.73 即:11011110.00010101.10100000.01001001 255.255.255.128 即:11111111.11111111.11111111.10000000 结果为 11011110.00010101.10100000.00000000 

这个结果与主机一的网络地址相同,主机一与主机二将被认为处于同一网络中,数据不再发送给 默认网关,而是直接在本网内传送。由于两台主机实际并不在同一网络中,数据包将在本子网内循环, 直到超时并抛弃。数据不能正确到达目的机,导致网络传输错误。

反过来, 如果两台主机的子网掩码原来都是 255.255.255.128, 误将主机二的设为 255.255.255.192, 主机一向主机二发送数据时,由于 IP 地址与错误的子网掩码相与,误认两台主机处于不同网络,则 会将本来属于同一子网内的机器之间的通信当作是跨网传输,数据包都交给缺省网关处理,这样势必 增加缺省网关的负担,造成网络效率下降。所以,子网掩码不能任意设置,子网掩码的设置关系到子 网的划分。

设置

子网划分是通过借用 IP 地址的若干位主机位来充当子网地址从而将原网络划分为若干子网而实 现的。划分子网时,随着子网地址借用主机位数的增多,子网的数目随之增加,而每个子网中的可用 主机数逐渐减少。以 C 类网络为例,原有 8 位主机位,2 的 8 次方即 256 个主机地址,默认子网掩码 255.255.255.0。借用 1 位主机位,产生 2 个子网,每个子网有 126 个主机地址;借用 2 位主机位,产 生 4 个子网,每个子网有 62 个主机地址……每个网中,第一个 IP 地址(即主机部分全部为 0 的 IP) 和最后一个 IP(即主机部分全部为 1 的 IP)不能分配给主机使用,所以每个子网的可用 IP 地址数为 总 IP 地址数量减 2;根据子网 ID 借用的主机位数,我们可以计算出划分的子网数、掩码、每个子网 主机数,列表如下:

① 划分子网数 ② 子网位数 ③ 子网掩码(二进制) ④ 子网掩码(十进制) ⑤ 每个子网主 机数

① 1~2 ② 1 ③ 11111111.11111111.11111111.10000000 ④ 255.255.255.128 ⑤ 126 ① 3~4 ② 2 ③ 11111111.11111111.11111111.11000000 ④ 255.255.255.192 ⑤ 62 ① 5~8 ② 3 ③ 11111111.11111111.11111111.11100000 ④ 255.255.255.224 ⑤ 30 ① 9~16 ② 4 ③ 11111111.11111111.11111111.11110000 ④ 255.255.255.240 ⑤ 14 ① 17~32 ② 5 ③ 11111111.11111111.11111111.11111000 ④ 255.255.255.248 ⑤ 6 ① 33~64 ② 6 ③ 11111111.11111111.11111111.11111100 ④ 255.255.255.252 ⑤ 2 

如上表所示的 C 类网络中,若子网占用 7 位主机位时,主机位只剩一位,无论设为 0 还是 1,都 意味着主机位是全 0 或全 1。由于主机位全 0 表示本网络,全 1 留作广播地址,这时子网实际没有可 用主机地址,所以主机位至少应保留 2 位。

计算步骤 

1、 确定要划分的子网数目以及每个子网的主机数目 

2、 求出子网数目对应二进制数的位数 N 及主机数目对应二进制数的位数 M。 

3、对该 IP 地址的原子网掩码,将其主机地址部分的前 N 位置 1 或后 M 位置 0 即得出该 IP 地 址划分子网后的子网掩码。

例如,对 B 类网络 135.41.0.0/16 需要划分为 20 个能容纳 200 台主机的网络。因为 16<20<32, 即:2 的 4 次方<20<2 的 5 次方,所以,子网位只须占用 5 位主机位就可划分成 32 个子网,可以满足 划分成 20 个子网的要求 。 B 类网络的默认子网掩码是 255.255.0.0 , 转换为二进制为 11111111.11111111.00000000.00000000。现在子网又占用了 5 位主机位,根据子网掩码的定义,划分 子网后的子网掩码应该为 11111111.11111111.11111000.00000000,转换为十进制应该为 255.255.248.0。 现在我们再来看一看每个子网的主机数。子网中可用主机位还有 11 位,2 的 11 次方=2048,去掉主 机位全 0 和全 1 的情况,还有 2046 个主机 ID 可以分配,而子网能容纳 200 台主机就能满足需求,按 照上述方式划分子网,每个子网能容纳的主机数目远大于需求的主机数目,造成了 IP 地址资源的浪 费。为了更有效地利用资源,我们也可以根据子网所需主机数来划分子网。还以上例来说,128<200 <256,即 2^7<200<2^8,也就是说,在 B 类网络的 16 位主机位中,保留 8 位主机位,其它的 16-8 =8 位当成子网位,可以将 B 类网络 138. 96.0.0 划分成 256(2^8)个能容纳 256-1-1=254 台(去掉全 0 全 1 情况)主机的子网。此时的子网掩码为 11111111.11111111.11111111.00000000,转换为十进制为 255.255.255.0。

在上例中,我们分别根据子网数和主机数划分了子网,得到了两种不同的结果,都能满足要求, 实际上,子网占用 5~8 位主机位时所得到的子网都能满足上述要求,那么,在实际工作中,应按照什 么原则来决定占用几位主机位呢?

划分时注意事项

在划分子网时,不仅要考虑目前需要,还应了解将来需要多少子网和主机。对子网掩码使用比需 要更多的主机位,可以得到更多的子网,节约了 IP 地址资源,若将来需要更多子网时,不用再重新 分配 IP 地址,但每个子网的主机数量有限;反之,子网掩码使用较少的主机位,每个子网的主机数 量允许有更大的增长,但可用子网数量有限。一般来说,一个网络中的节点数太多,网络会因为广播 通信而饱和,所以,网络中的主机数量的增长是有限的,也就是说,在条件允许的情况下,会将更多

的主机位用于子网位。

综上所述,子网掩码的设置关系到子网的划分。子网掩码设置的不同,所得到的子网不同,每个子 网能容纳的主机数目不同。若设置错误,可能导致数据传输错误。

优点 

1.减少网络流量 2.提高网络性能 3.简化管理 

4.易于扩大地理范围 How to Creat Subnets 

如何划分子网

首先要熟记 2 的幂:2 的 0 次方到 9 次方的值分别为:1,2,4,8,16,32,64,128,256 和 512.还有要明白的 是:子网划分是借助于取走主机位,把这个取走的部分作为子网位.因此这个意味划分越多的子网,每个 子网容纳的主机将越少. 

Subnet Masks 

子网掩码用于辨别 IP 地址中哪部分为网络地址,哪部分为主机地址,有 1 和 0 组成,长 32 位,全为 1 的位代表网络号.不是所有的网络都需要子网,因此就引入 1 个概念:默认子网掩码(default subnet mask).A 类 IP 地址的默认子网掩码为 255.0.0.0;B 类的为 255.255.0.0;C 类的为 255.255.255.0 

Classless Inter­Domain Routing(CIDR) 

CIDR 叫做无类域间路由,ISP 常用这样的方法给客户分配地址,ISP 提供给客户 1 个块(block size), 类似这样:192.168.10.32/28,这排数字告诉你你的子网掩码是多少,/28代表多少位为1,最大/32.但是你必 须知道的 1 点是:不管是 A 类还是 B 类还是其他类地址,最大可用的只能为 30/,即保留 2 位给主机位 

CIDR 值: 

1.掩码 255.0.0.0:/8(A 类地址默认掩码) 2.掩码 255.128.0.0:/9 3.掩码 255.192.0.0:/10 4.掩码 255.224.0.0:/11 5.掩码 255.240.0.0:/12 6.掩码 255.248.0.0:/13 7.掩码 255.252.0.0:/14 8.掩码 255.254.0.0:/15 

9.掩码 255.255.0.0:/16(B 类地址默认掩码) 10.掩码 255.255.128.0:/17 11.掩码 255.255.192.0:/18 12.掩码 255.255.224.0:/19 13.掩码 255.255.240.0:/20 14.掩码 255.255.248.0:/21

15.掩码 255.255.252.0:/22 16.掩码 255.255.254.0:/23 

17.掩码 255.255.255.0:/24(C 类地址默认掩码) 18.掩码 255.255.255.128:/25 19.掩码 255.255.255.192:/26 20.掩码 255.255.255.224:/27 21.掩码 255.255.255.240:/28 22.掩码 255.255.255.248:/29 23.掩码 255.255.255.252:/30 Subnetting Class A,B&C Address 

划分捷径 

1.你所选择的子网掩码将会产生多少个子网 

2 的 x 次方­2(x 代表掩码位,即 2 进制为 1 的部分,现在的网络中,已经不需要­2,已经可以全部 使用,不过需要加上相应的配置命令,例如 CISCO 路由器需要加上 ip subnet zero 命令就可以全部使 用了。) 

2.每个子网能有多少主机 

2 的 y 次方­2(y 代表主机位,即 2 进制为 0 的部分) 3.有效子网是

有效子网号=256­10 进制的子网掩码(结果叫做 block size 或 base number) 4.每个子网的广播地址是

广播地址=下个子网号­1 5.每个子网的有效主机分别是

忽略子网内全为 0 和全为 1 的地址剩下的就是有效主机地址.最后有效 1 个主机地址=下个子网号 ­2(即广播地址­1) 

根据上述捷径划分子网的具体实例 

C 类地址例子:网络地址 192.168.10.0;子网掩码 255.255.255.192(/26) 1.子网数=2*2­2=2 

2.主机数=2 的 6 次方­2=62 

3.有效子网?:block size=256­192=64;所以第一个子网为 192.168.10.64,第二个为 192.168.10.128 4.广播地址:下个子网­1.所以 2 个子网的广播地址分别是 192.168.10.127 和 192.168.10.191 5.有效主机范围是:第一个子网的主机地址是 192.168.10.65 到 192.168.10.126;第二个是 192.168.10.129 到 192.168.10.190 

B 类地址例子 1:网络地址:172.16.0.0;子网掩码 255.255.192.0(/18)

1.子网数=2*2­2=2 

2.主机数=2 的 14 次方­2=16382 

3.有效子网?:block size=256­192=64;所以第一个子网为 172.16.64.0,最后 1 个为 172.16.128.0 4.广播地址:下个子网­1.所以 2 个子网的广播地址分别是 172.16.127.255 和 172.16.191.255 5.有效主机范围是:第一个子网的主机地址是 172.16.64.1 到 172.16.127.254;第二个是 172.16.128.1 到 172.16.191.254 

B 类地址例子 2:网络地址:172.16.0.0;子网掩码 255.255.255.224(/27) 

1.子网数=2 的 11 次方­2=2046(因为 B 类地址默认掩码是 255.255.0.0,所以网络位为 8+3=11) 2.主机数=2 的 5 次方­2=30 

3.有效子网?:block size=256­224=32;所以第一个子网为 172.16.0.32, 最后 1 个为 172.16.255.192 4.广播地址:下个子网­1.所以第一个子网和最后 1 个子网的广播地址分别是 172.16.0.63 和 172.16.255.223 

5.有效主机范围是:第一个子网的主机地址是 172.16.0.33到 172.16.0.62;最后 1个是 172.16.255.193 到 172.16.255.222 

Variable Length Subnet Masks(VLSM) 

三类主要的网络地址

我们知道,从 LAN 到 WAN,不同种类网络规模相差很大,必须区别对待。因此按网络规模大小, 将网络地址分为主要的三类,如下: A 类: 0 1 2 3 8 16 24 3 1 0 网络号主机号 B 类: 1 0 网络号主 机号 C 类: 1 1 0 网络号主机号 A 类地址用于少量的(最多 27 个)主机数大于 216 的大型网,每个 A 类网络可容纳最多 224 台主机;B 类地址用于主机数介于 28~216 之间数量不多不少的中型网,B 类网络最多 214 个;C 类地址用于每个网络只能容纳 28 台主机的大量小型网,C 类网络最多 221 个。 除了以上 A、B、C 三个主类地址外,还有另外两类地址,如下: D 类: 1 1 1 0 多目地址 E 类: 1 1 1 1 0 留待后用 其中多目地址(multicast address)是比广播地址稍弱的多点传送地址,用于支持多 目传输技术。E 类地址用于将来的扩展之用。

可变长子网掩码的作用

可变长子网掩码(VLSM)的作用:节约 IP地址空间;减少路由表大小.使用 VLSM时,所采用的路由协 议必须能够支持它,这些路由协议包括 RIPv2,OSPF,EIGRP 和 BGP. 关于更多的 VLSM 知识,可以去进 行搜索

因篇幅问题不能全部显示,请点此查看更多更全内容