层次化IPv6地址规划

IPv6层次化地址规划

前面我们讲到了、IPv4的一个缺陷就是地址分配混乱。由于缺乏统一的设计和管理,各种子网的存在不仅导致骨干路由表过于庞大、路由设备资源消耗过大、路由转发效率降低,而且还造成了地址的浪费(如子网网络地址和广播地址不能用于网络节点)。IPv6在设计之初就充分考虑到了这个问题,即IPv6地址在分配上采用层次化的路由分配原则,尽可能减少主干路由条目数,从而提高网络转发效率。当我们在进行IPv6地址规划时,也要遵循层次化的规划原则,这样才能充分提高IPv6网络的转发效率。什么是层次化规划呢?就是在进行网络规划时,按网络区域从大到小的顺序,对应着IPv6前缀长度也由短到长的规律来划分地址。比如一个可能的网络规划如下表:

image-20220119225605571

从上表我们可以看出、一个省级单位申请到/48位的地址,而到市级单位,就可以使用/52位,也就是到市级单位时,利用了52-48=4位来划分子网,即可以划分16个子网。如果一个省有16个以上的市,就用5位。每个市级单位再往下到县级单位,就可以使用/56位地址,同样,每个市下面可以支持16个子网分别用于各个县级单位。每个县还可以进一步把/56位的地址分到下面的各个乡镇。当然这只是一个大概的例子,在实际应用中,还需要根据具体情况来决定到哪一级使用多少位来划分子网。

当这样做好规划后,网络就可以按区域来汇聚路由。比如在上表中,对于省级单位的路由器来说,一条2001:1:1:0000::/52路由条目就包括了整个A市,不用再单独针对某个县来写入具体的/56位路由。这就在减少路由条目的同时,提高了网络转发效率。其实IPv4也可以遵循这样的层次化规划原则,只不过IPv4地址位数太短,不可能像IPv6这样这么方便地进行层次化地址规划。这里需要说明的是,虽然最新的标准规定主机节点使用的IPv6地址前缀长度必须是64位,但其实很多网络设备和终端主机都支持更长的前缀长度,也就是说用户主机完全可以使用/80位这样的前缀长度,从而使层次化规划的层级数可以更深入、更细致。

我们来看一个实际的例子。假定某高校申请到一个2001:1:1::/48地址段,该高校有3个校区,未来也不确定是否会有新的校区。每个校区又包括两个教学区域和两个宿舍区域。每个区域又由若干栋楼宇组成。考虑到校区、区域、楼宇等数量的不确定性,要进行足够的冗余设计,IPv6地址可进行如下规划。

A校区 2001:1:1:0000::/50
B校区 2001:1:1:4000::/50
C校区 2001:1:1:8000::/50
D校区 2001:1:1:C000::/50

以C校区为例,继续分4个区域,采用“/52”来划分。

教学区1地址 2001:1:1:8000::/52
教学区2地址 2001:1:1:9000::/52
宿舍区1地址 2001:1:1:a000::/52
宿舍区2地址 2001:1:1:b000::/52

再以教学区1为例,可以再按“/56”给楼宇分配地址,总共支持2(56-52)=24=16栋楼宇,地址段分别为2001:1:1:8000::/56、2001:1:1:8100::/56、001:1:1:8200::/56、
…、2001:1:1: 8F00::/56。

最后可以再为每栋楼宇划分“/64”地址,每栋楼可以分配2(64-56)=28=256个子网。这样的IPv6地址就有层次化概念。只要确定IPv6地址所在的网段,就能快速定位在哪栋楼哪个网段;同时,由于路由条目层次分明,在主干上也便于进行路由聚合,这样一来条目数也大大减少,转发效率也会提高。

推荐文章