今天研究了一下IP地址段与子网掩码的算法,需要用到二进制进行换算,相对比较复杂,下面给出IP地址段与子网掩码计算表,以方便大家查询。
掩码位数 | 子网数 | 十进制掩码 | IP 数 | 参考可用IP数(网络号-广播地址) | |||
0 | 1 | 0 | 0 | 0 | 0 | 4294967296 | 4294967294 |
1 | 2 | 128 | 0 | 0 | 0 | 2147483648 | 2147483646 |
2 | 4 | 192 | 0 | 0 | 0 | 1073741824 | 1073741822 |
3 | 8 | 224 | 0 | 0 | 0 | 536870912 | 536870910 |
4 | 16 | 240 | 0 | 0 | 0 | 268435456 | 268435454 |
5 | 32 | 248 | 0 | 0 | 0 | 134217728 | 134217726 |
6 | 64 | 252 | 0 | 0 | 0 | 67108864 | 67108862 |
7 | 128 | 254 | 0 | 0 | 0 | 33554432 | 33554430 |
8 | 256 | 255 | 0 | 0 | 0 | 16777216 | 16777214 |
9 | 512 | 255 | 128 | 0 | 0 | 8388608 | 8388606 |
10 | 1024 | 255 | 192 | 0 | 0 | 4194304 | 4194302 |
11 | 2048 | 255 | 224 | 0 | 0 | 2097152 | 2097150 |
12 | 4096 | 255 | 240 | 0 | 0 | 1048576 | 1048574 |
13 | 8192 | 255 | 248 | 0 | 0 | 524288 | 524286 |
14 | 16384 | 255 | 252 | 0 | 0 | 262144 | 262142 |
15 | 32768 | 255 | 254 | 0 | 0 | 131072 | 131070 |
16 | 65536 | 255 | 255 | 0 | 0 | 65536 | 65534 |
17 | 131072 | 255 | 255 | 128 | 0 | 32768 | 32766 |
18 | 262144 | 255 | 255 | 192 | 0 | 16384 | 16382 |
19 | 524288 | 255 | 255 | 224 | 0 | 8192 | 8190 |
20 | 1048576 | 255 | 255 | 240 | 0 | 4096 | 4094 |
21 | 2097152 | 255 | 255 | 248 | 0 | 2048 | 2046 |
22 | 4194304 | 255 | 255 | 252 | 0 | 1024 | 1022 |
23 | 8388608 | 255 | 255 | 254 | 0 | 512 | 510 |
24 | 16777216 | 255 | 255 | 255 | 0 | 256 | 254 |
25 | 33554432 | 255 | 255 | 255 | 128 | 128 | 126 |
26 | 67108864 | 255 | 255 | 255 | 192 | 64 | 62 |
27 | 134217728 | 255 | 255 | 255 | 224 | 32 | 30 |
28 | 268435456 | 255 | 255 | 255 | 240 | 16 | 14 |
29 | 536870912 | 255 | 255 | 255 | 248 | 8 | 6 |
30 | 1073741824 | 255 | 255 | 255 | 252 | 4 | 2 |
31 | 2147483648 | 255 | 255 | 255 | 254 | 2 | |
32 | 4294967296 | 255 | 255 | 255 | 255 | 1 | |
当掩码的最后一位为十进制的0时,计算IP地址段数方法:IP数/256=IP地址段数,在实际中我们往往是先知道了IP地址段数,这时我们就可以将IP地址段数乘以256,得出总的IP数,然后在上面的表中查出相应IP数的十进制子网掩码是多少。