最近在重看一些网络知识,看到了子网掩码部分,子网掩码在实际使用和考试中都是要遇到的,但是子网掩码的计算牵扯到二进制的转换,比较麻烦。这次在网络和论坛上看到了子网掩码的简易计算方法,就整理一下。子网掩码和VLSM(可变长掩码)的计算方法参见:子网掩码入门之简述
以C类网为例。
如果要划分出2个子网段,用256/2=128,得出每个子网中有128个IP地址,用256减去每个子网的地址数(256-128=128),子网掩码就是255.255.255.128。
划分成4个网段,256/4=64,每个子网64个地址,256-64=192,子网掩码就是255.255.255.192。
划分成8个网段,256/8=32,每个子网32个地址,256-32=224,子网掩码就是255.255.255.224。
即,子网掩码的最后一位数 就是用256减去每个子网的地址数而得出。
========================
实际应用中,如共有13台主机,在设置子网掩码时用255.255.255.0就浪费了,我们来设定VLSM。
13<2的4次方(16),即用16为计算基数,256-16=240(注意:不是用256-13),得子网掩码255.255.255.240
用256去减的那个子网的地址数,一定是2的N次方(N从0到10)。
如果主机数是13,加上两头的不可用的网络和广播IP地址数,一共是15,选取比15大,且最接近15的一个2的N次方值,即16。
如果主机是50,则52<2的6次方(64),256-64=192,子网掩码255.255.255.192
下面是2的0次到10次方的计算值分别是:
1 2 4 8 16 32 64 128 256 512 1024
附常用掩码位数与子码掩码对应列表: 每网段所含IP数
32----------255 . 255 . 255 . 255 + 1 =256
31---------- 255 . 255 . 255 . 254 + 2 =256
30---------- 255 . 255 . 255 . 252 + 4 =256
29---------- 255 . 255 . 255 . 248 + 8 =256
28---------- 255 . 255 . 255 . 240 16
27---------- 255 . 255 . 255 . 224 32
26---------- 255 . 255 . 255 . 192 64
25---------- 255 . 255 . 255 . 128 + 128 =256
24---------- 255 . 255 . 255 . 0 256
23---------- 255 . 255 . 254 . 0 512
22---------- 255 . 255 . 252 . 0 1024
21---------- 255 . 255 . 248 . 0
20---------- 255 . 255 . 240 . 0
19---------- 255 . 255 . 224 . 0
18---------- 255 . 255 . 192 . 0
17---------- 255 . 255 . 128 . 0
16---------- 255 . 255 . 0 . 0