地址管控
IPv4 的地址虽然从总体上来看确实是稀缺资源,不过与其他的稀缺资源一样,如何合理分配资源并提供使用率一直都是比较大的问题。IANA(Internet Assigned Numbers Authority) 和 RIR(Regional Internet Registries) 是负责分配 IP 地址的组织,除了一些为专有网络预留的 IP 地址之外,剩余的地址一般都是通过子网以地址块的形式分配。
在互联网协议的早期开发阶段,子网是通过 IP 地址最左侧的 8 位划分子网,但是因为这种方式只允许划分 256 个网络,所以在 1981 年被分类网络架构(Classful Network Architecture)迅速替代。分类网络架构中包含 A、B 和 C 三类网络12:
Class 网络数 主机数
A 128 16,777,214
B 16,384 65,534
C 2,097,152 254
A 类地址只能分配给 128 个不同的网络,每个网络中可以包含 1,600 万主机,而 C 类地址可以分配给 200 万组织,网络中可以包含 200 多个主机。通过对 IP 地址的分类,我们能够更合理地分配 IP 地址块,不过虽然它对 IP 地址进行了分类,但是它对地址的划分还是比较粗糙。
IETF 在 1993 年提出的无类别域间路由(Classless Inter-Domain Routing、CIDR)替代了分类网络架构,CIDR 基于可变长子网掩码(Variable-length Subnet Masking、VLSM),它的主要目的有两个13:
缓解互联网中路由器中转发表的增长速度;
缓解 IPv4 地址耗尽的速度;
分类网络架构中对地址的划分还是有些过于理想,过小的地址块往往不够用、稍大的地址块却会造成较大的浪费。与分类网络架构只使用 8、16 和 24 固定长度的子网掩码将 IP 地址块划分成三类不同,CIDR 会使用可变长度的子网掩码来划分地址块,如下所示的 CIDR 表示中,N 表示前缀长度,它可以是从 0 到 32 的任意值:
A.B.C.D/N
A.B.C.D/8、A.B.C.D/16 和 A.B.C.D/24 就可以分别表示分类网络架构中的 A、B 和 C 三类不同的地址块,同时也可以使用其他的数字更灵活的表示特定网络数和主机数的子网。
除了更细粒度的地址分配之外,回收不再使用的 IP 资源并投入再利用也是延长 IPv4 寿命的重要手段,不过在这里我们就不做展开了。从 IP 地址的分配中,我们能看到资源从充足到稀缺,人对于资源使用态度的转变,从最开始粗糙的分配方式到后来细粒度的管控,充足的资源总是会被滥用,只有当资源真正变得稀缺时,我们才开始精打细算。 |