IP网络子网划分

IP网络子网划分

(本文要求读者懂得IP编址,可以参考我之前的文章IP协议/地址(IPv4&IPv6)概要 - 菜缤的世界 CairBin's Blog

什么是子网划分

子网划分允许网络分段,从而将较大的网络划分成较小的网络

背景要求

随着接入网络的主机数主机增多,对更方便的网络管理、改善网络性能和更轻松地实施安全策略的需求增大,两级分层结构显然不足,因此就有了子网划分。

IPv4网络划分子网

基础

广播域

在以太网LAN中,设备使用广播进行定位。

网络设备使用ARP协议将二层广播发送到本地网络上已知的IPv4地址。

主机通常使用DHCP协议来获取IPv4地址配置,这会发送本地网络上的广播来定位DHCP服务器。

问题

大型广播域由于其庞大的流量会使网络和设备运行缓慢,因此诞生了减小网络规模以创建更小的广播域的需求。

划分子网

有类划分

对于IPv4网络,在二进制八位数边界/8、/16、/24处最容易进行子网划分

  • 其概括如下表:
  • 我们以网络192.0.0.0/8为例在/16处划分子网如下:

无类子网划分

无类子网划分,子网可以从任何主机位借位来创建掩码。

我们记子网数目为N,每个子网下地址数和主机数分别为A、H,借用主机位的位数为n,剩下的主机位为h,则有如下关系
N = 2^{n}

A = 2^{h}

H = A-2 =2^{h}-2

在每个子网的地址中,有两个地址无法分配给主机,它们分别是网络地址广播地址,所以要减去2

注意,划分子网后的前缀长度不能/31/32

特别是对于/31,通过上面的公式可以知道每个子网下的主机数为0,这显然恰好不符合要求,/32更不必说了。

可变长子网掩码(VLSM)

传统的子网掩码可能会造成IP地址浪费,可变长子网掩码根据借的主机位的位数,先对网络进行划分,然后对子网进一步划分子网,并且该过程可重复以创建不同大小的子网。

VLSM对于前面的计算公式仍适用。

IPv6网络子网划分

IPv6划分子网十分简单。

IPv6全局单播地址使用子网ID字段划分子网,该字段长16位,故可以划分65536个子网(这还不包括从接口ID借位的情况),每个子网支持多达18百亿亿的主机IPv6地址。

使用IPv6,网络拓扑要求对每个LAN以及路由器之间的WAN链路划分子网,但相对于IPv4,IPv6对WAN子链路子网不再进一步划分子网,因为地址足够多。