什么是子网划分?
子网划分定义:Internet组织机构定义了五种IP地址,有A、B、C三类地址。A类网络有126个,每个A类网络可能有16777214台主机,它们处于同一广播域。而在同一广播域中有这么多节点是不可能的,网络会因为广播通信而饱和,结果造成16777214个地址大部分没有分配出去。可以把基于每类的IP网络进一步分成更小的网络,每个子网由路由器界定并分配一个新的子网网络地址,子网地址是借用基于每类的网络地址的主机部分创建的。划分子网后,通过使用掩码,把子网隐藏起来,使得从外部看网络没有变化,这就是子网掩码。
ip地址与子网掩码
我们都知道 ip 地址可以分成网络位和主机位。通过将子网掩码与ip地址做桉位与(&)运算,可以得到我们在网络中所属的网段。
就拿 192.168.0.1/24
这个我们最熟悉的ip地址来说,我们看到在 ip 地址后面有个 /24
,表示该ip地址有24个 ‘1’ 组成的子网掩码。那么我们通过桉位与(&)运算很容易就能得到他的网络位。
如图所示,在192.168.0.1/24
中网络位为 192.168.0.0
。而 192.168.0.1/24
中最后的那个 ‘1’ 表示主机位,我们可以这样认为:所有可以上网的主机都有一张通行证(ip地址),那么网络位表示他们所处的网段(类比我们生活中家庭住址),最后的主机为就是编号(类比我们的门牌号)。知道了这些信息后,我们就可以得出这个编号为 ‘1’ 的计算机住在网段为 192.168.0.0
的网段。
网段是什么?
- 同一网段,就好比身处同一个村子,村里人互相往来很方便(单播)。如果有什么重要的事情要通知全村,只需要大喊一声全村人都能听到你的讲话(广播)。
- 不同网段,就好比两个不同的村子,两村人互相交流沟通就很麻烦了,并且你大喊一声不可能两个村子都能听到(无法广播)。此时,如果A村的a想和B村的b通信(好比写信),a只能把信交给守在村口送信的人(路由器),因为他知道怎么从A村到B村。
现在的 192.168.0.0
和 192.168.1.0
就好比 A 村和 B 村,他们属于不同的网段,不能直接通信。首先我们要知道的是,划分网段和我们划分省-市-县是一样的,都有其意义和价值。比如,一来网路分段可以提供良好的通讯寻址方式,二来网络分段可以确保数据和IT资产安全。
子网划分
继续拿192.168.0.0
这个网段来说。在这个网段中有四位点位十进制数,前三位都用来标识网络地址,而供分配的主机号只有一位十进制数字(1-255)大小。而我们实际使用很难做到完美分配这些资源。这就像你有一间大仓库,而你现在只需使用仓库几平米的位置放点东西,而整个仓库还剩下很大一部分没有使用。
正常人的做法就是把仓库划分成不同区域,下次还能继续使用。
而计算机不这么想,它在划分资源的时候是一次性划分的,也就是一次性全部把资源分配出去。
而子网划分就是用来解决这种问题的。
在子网掩码中加上一个 ‘1’ ,此时的主机数量的取值范围就从之前的 1–254(注:全0为网络网段,全1为广播地址) 变成 1–126,129–254 两个范围。每个范围容纳 27- 2 = 216 个主机
- 192.168.0.0–192.168.0.127 为划分后的第一个子网
子网范围:11000000.10101000.00000000.00000000 ---- 11000000.10101000.00000000.01111111
192.168.0.0–192.168.0.127
主机范围:11000000.10101000.00000000.00000001 ---- 11000000.10101000.00000000.01111110
192.168.0.1–192.168.0.126 - 192.168.0.128–192.168.0.255 为划分后的第二个子网
子网范围:11000000.10101000.00000000.10000000 ---- 11000000.10101000.00000000.11111111
192.168.0.128–192.168.0.255
主机范围:11000000.10101000.00000000.10000001 ---- 11000000.10101000.00000000.11111110
192.168.0.129–192.168.0.254
同理,将子网掩码再次加一还能将子网继续划分下去。
子网划分的规律
ip地址虽然常常用十进制表示,但实质上它是一串二进制数。我们把32位二进制ip地址拆分为4段,每一段都有8个二进制,最大可到 11111111(255),最小可到 00000000(0)。接下来,我们用一段线段来模拟子网划分,并总结出规律。
针对一段 8 位的二进制地址,对应十进制子网掩码和可划分的子网。
以下为对应子网掩码与网段的划分情况。其中的 1/2、1/4…表示将整个 0–255网段划分成多少份。
- 0划分1个网段,子网掩码24位
子网掩码: 0000 0000 0
主机总数:28 - 2 = 254 - 128划分2个网段,子网掩码25位,最后一个网段从
128
开始
子网掩码: 1000 0000 128 1/2
主机总数:27 - 2 = 126 - 192划分4个网段,子网掩码26位,最后一个网段从
192
开始
子网掩码: 1100 0000 192 1/4
主机总数:26 - 2 = 62 - 224划分8个网段,子网掩码27位,最后一个网段从
224
开始
子网掩码: 1110 0000 224 1/8
主机总数:25 - 2 = 30 - 240划分16个网段,子网掩码28位,最后一个网段从
240
开始
子网掩码: 1111 0000 240 1/16
主机总数:24 - 2 = 14 - 248划分32个网段,子网掩码29位,最后一个网段从
248
开始
子网掩码: 1111 1000 248 1/32
主机总数:23 - 2 = 6 - 252划分64个网段,子网掩码30位,最后一个网段从
252
开始
子网掩码: 1111 1100 252 1/64
主机总数:22 - 2 = 2
例如,在C类网络中,子网掩码 255.255.255.x
子网掩码 | 子网划分情况 | 二进制子网掩码 | 十进制子网掩码 |
---|---|---|---|
子网掩码全0 | 没有划分子网 | 0000 0000 |
0 |
子网掩码首位加一 | 划分2个子网 | 1000 0000 |
128 |
子网掩码首位加二 | 划分4个子网 | 1100 0000 |
192 |
子网掩码首位加三 | 划分8个子网 | 1110 0000 |
224 |
子网掩码首位加四 | 划分16个子网 | 1111 0000 |
240 |
…… | …32… | 1111 1000 |
248 |
规律:
- 每次子网掩码首位加一,划分网段加倍。
- 划分网段个数为:255/(255-x)
如:255.255.255.192–> 255-192=64、255/64=4
则,总共分为四段网段(步长为64) 0-63、64-127、128-191、192-155 - 总地址数为掩码反码中1的数目的 2^n 个
如:255.255.255.192–> x.x.x.1111 0000; 反码x.x.x.0000 1111
地址总数:2^4=64 ,即每个网段64个ip地址 - 主机数为 总地址数 - 2
其中,主机位全0位网络为,全1位广播位,则实际主机数量要减2,可取范围为
x.x.x.1-62、65-126、129-190、193-254
子网范围计算
比如,现有 ip 地址 192.168.0.1/25
,计算该网段的子网范围及可用主机范围。
第4字节上的增量 : 256-192=64 (1/4)
子网地址:192.168.0.0----192.168.0.64----192.168.0.128----192.168.0.192
最小主机地址:192.168.0.1----192.168.0.65----192.168.0.129----192.168.0.193
最大主机地址:192.168.0.62—192.168.0.126—192.168.0.190—192.168.0.254
广播地址:192.168.0.63—192.168.0.127—192.168.0.191—192.168.0.255