子网划分
类别1:根据所要网段数划分子网
例1:172.16.0.0/16 分五段
5<=8=2^3 //计算所借的位数
16+3=19 //计算划分后的子网掩码位数
32-19=13>8 //计算主机位的位数
2^13=8192 //计算网段的IP总个数
8192-2=8190 //计算网段的可用主机数
当可用IP个数大于256时:
方法1:
8192/256=32
方法2:
13-8=5
2^5=32
网段 | 网络号 | 广播地址 | 可用主机数 | 备注 |
1 | 172.16.0.0/19 | 172.16.31.255 | 8190 | 0 |
2 | 172.16.32.0/19 | 172.16.63.255 | 8190 | 0+32 |
3 | 172.16.64.0/19 | 172.16.95.255 | 8190 | 0+32+32 |
4 | 172.16.96.0/19 | 172.16.127.255 | 8190 | 0+32+32+32 |
5 | 172.16.128.0/19 | 172.16.159.255 | 8190 | 0+32+32+32+32 |
//每一个段都加上上一个段的IP总数等于本段的网络号
例如本例中第一个网段IP总数为8192,起始网络号为172.16.0.0,则第二个网段的起始ip(即网络号)为172.16.32.0(8192/256=32);
为什么要除以256?
IP地址分为四段,每一段为8个二进制数,则每个段的范围为2^8=256,即每一段的十进制数范围为0~255
例2:192.168.0.0/25 分三段
3<=4=2^2
25+2=27
32-27=5<8
2^5=32
32-2=30 //计算网段的可用主机数
网段 | 网络号 | 广播地址 | 可用主机数 | 备注 |
1 | 192.168.0.0/27 | 192.168.0.31 | 30 | 0 |
2 | 192.168.0.32/27 | 192.18.0.63 | 30 | 0+32 |
3 | 192.168.0.64/27 | 192.168.0.95 | 30 | 0+32+32 |
例3:192.168.0.128/25 分三段
3<=4=2^2
25+2=27
32-27=5
2^5=32
32-2=30 //计算网段的可用主机数
网段 | 网络号 | 广播地址 | 可用主机数 | 备注 |
1 | 192.168.0.128/27 | 192.168.0.159 | 30 | 128 |
2 | 192.168.0.160/27 | 192.18.0.191 | 30 | 128+32 |
3 | 192.168.0.192/27 | 192.168.0.223 | 30 | 128+32+32 |
//每一个段都加上上一个段的IP总数等于本网段的网络号
例如本例中网段1的IP总数为32,网段1的起始IP为192.168.0.128,则网段2的起始ip(即网络号)为192.168.0.160(128+32=160);
例:4:172.16.0.0/23 分3段
3<=4=2^2
23+2=25
32-25=7
2^7=128
128-8=126 //计算网段的可用主机数
网段 | 网络号 | 广播地址 | 可用主机数 | 备注 |
1 | 172.16.0.0/25 | 172.16.0.127 | 126 | 0<=256 |
2 | 172.16.0.128/25 | 172.16.0.255 | 126 | 0+128<=256 |
3 | 172.16.1.0/25 | 172.16.1.127 | 126 | 0+128+128=256 /256=1进1 |
总结
不管是哪种情况,其实都是一样的算法;
好比例1:
网段 | 网络号 | 广播地址 | 可用主机数 | 备注 |
1 | 172.16.0.0/19 | 172.16.31.255 | 8190 | 0 |
2 | 172.16.32.0/19 | 172.16.63.255 | 8190 | 0+8192=8192/256=32进32 |
3 | 172.16.64.0/19 | 172.16.95.255 | 8190 | 0+8192+8192=16384/256=64 |
4 | 172.16.96.0/19 | 172.16.127.255 | 8190 | 0+8192+8192+8192=24576/256=96 |
5 | 172.16.128.0/19 | 172.16.159.255 | 8190 | 0+8192+8192+8192+8192=32768/256=128 |
计算思路如下:
- 查看题目所给的网段是否为该段的网络号
- 如果不是,则先计算出该段的网络号,如果是,直接进入第三步
- 根据题目要求所要划分几段,计算出所要借的位数
- 用网段的掩码+所借的位数,计算出划分后的网段的子网掩码
- 用划分后的掩码与32相减求出主机位数
- 用 2^主机位数 公式计算出网段的总IP数,用 2^主机位数-2 公式计算出可用主机数
- 列表
类别2:根据主机数划分子网
例5:网段192.168.0.0/24,A部门8个主机,B部门15个,C部门26个
按照需求最高的部门计算所需借的位数:
26<=32=2^5
32-5=27
2^5-2=30
网络号 | 广播地址 | 可用主机数 | 备注 | |
A部门 | 192.168.0.0/27 | 192.168.0.31 | 30 | 0 |
B部门 | 192.168.0.32/27 | 192.168.0.63 | 30 | 0+32 |
C部门 | 192.168.0.64/27 | 192.168.0.95 | 30 | 0+32+32 |
例6:网段192.168.0.0/24,A部门8个主机,B部门15个,C部门26个
按照需求计算各部门所需借的位数:
A部门:
8+2<=16=2^4
32-4=28
2^4-2=14
B部门:
15+2<=32=2^5
32-5=27
2^5-2=30
C部门:
26+2<=32=2^5
32-5=27
2^5-2=30
网络号 | 广播地址 | 可用主机数 | 备注 | |
A部门 | 192.168.0.64/28 | 192.168.0.79 | 16 | 0+32+32(第三) |
B部门 | 192.168.0.0/27 | 192.168.0.31 | 30 | 0(第一) |
C部门 | 192.168.0.32/27 | 192.168.0.63 | 30 | 0+32(第二) |
//例6为不规则划分子网,按照需求划分子网要从需求最高的部门开始划分,如例6中,B和C部门的需求最高,故优先给B和C部门划分网段,再依次往下划分;
附:如何计算网络号
根据掩码,确定主要计算哪一个段, >=8 即第一段不变,>=16 即前两段不变,>=24 即前三段不变
例1:192.168.0.12/24
16<=24=24,即网络号位前三段,最后一段为主机位(全部为0)可得网络号:192.168.0.0/24
例2:172.16.3.154/23
16<=23<=24,即网段前两段不变,
计算第三段的的二进制数
3 ==》 0000 0011
24-23=1,8-1=7,即保留第三段的的二进制数的前7位,其它位变0,计算其十进制数
0000 0010 ==》 2
可得网络号:172.16.2.0/23
例3:192.168.0.160/25
24<=25<32,即前三段不变
160 ==》 1010 0000
32-25=7,即保留第四段第一位,其余变为0,计算其十进制数
1000 0000 ==》 128
可得网络号:192.168.0.128/25