Skip to main content

6. 新地址分配和路由示例 (Example of New Address Assignments and Routing)

本节通过一个具体示例说明CIDR地址分配和路由聚合的实践应用。

6.1. 地址委派 (Address Delegation)

考虑从10.24.0.0开始到10.31.255.255结束的524,288 (2^19) 个地址块,分配给单个网络提供商"PA"。这相当于2048个传统"C类"网络号 (或 /24) 的块大小。到这个块的无类别路由将被描述为 10.24.0.0,掩码为 255.248.0.0,前缀为 10.24.0.0/13。

假设这个服务提供商按以下顺序连接六个站点 (这很重要,因为它展示了服务提供商地址空间中可能形成临时"空洞"的方式):

  • C1: 需要少于2048个地址 (/21 或 8 × /24)
  • C2: 需要少于4096个地址 (/20 或 16 × /24)
  • C3: 需要少于1024个地址 (/22 或 4 × /24)
  • C4: 需要少于1024个地址 (/22 或 4 × /24)
  • C5: 需要少于512个地址 (/23 或 2 × /24)
  • C6: 需要少于512个地址 (/23 或 2 × /24)

在所有情况下,每个站点"需要"的IPv4地址数量假设允许显著增长。服务提供商如下委派其地址空间:

  • C1: 分配 10.24.0 到 10.24.7。此网络块由路由 10.24.0.0/21 (掩码 255.255.248.0) 描述。

  • C2: 分配 10.24.16 到 10.24.31。此块由路由 10.24.16.0/20 (掩码 255.255.240.0) 描述。

  • C3: 分配 10.24.8 到 10.24.11。此块由路由 10.24.8.0/22 (掩码 255.255.252.0) 描述。

  • C4: 分配 10.24.12 到 10.24.15。此块由路由 10.24.12.0/22 (掩码 255.255.252.0) 描述。

  • C5: 分配 10.24.32 和 10.24.33。此块由路由 10.24.32.0/23 (掩码 255.255.254.0) 描述。

  • C6: 分配 10.24.34 和 10.24.35。此块由路由 10.24.34.0/23 (掩码 255.255.254.0) 描述。

这六个站点应该在提供商的IGP (内部网关协议) 中表示为六个不同大小的前缀。如果出于某种原因,提供商使用不支持无类别路由或可变长度子网的过时IGP,则必须承载所有 /24 的显式路由。

为使此示例更真实,假设C4和C5通过其他服务提供商"PB"进行多宿主连接。进一步假设存在一个站点"C7",它最初连接到"RB",但已移至"PA"。因此,它拥有从PB的块 (接下来的) 2048 × /24 中分配的网络号块。

  • C7: 分配 10.32.0 到 10.32.15。此块由路由 10.32.0.0/20 (掩码 255.255.240.0) 描述。

对于多宿主站点,假设C4通过"RA"作为主要路径广告,通过"RB"作为次要路径; C5通过"RB"作为主要路径,通过"RA"作为次要路径。此外,假设"RA"和"RB"都连接到同一个传输服务提供商"BB"。

图形化地,此拓扑如下所示:

   10.24.0.0 -- 10.24.7.0__         __10.32.0.0 - 10.32.15.0
C1: 10.24.0.0/21 \ / C7: 10.32.0.0/20
\ /
+----+ +----+
10.24.16.0 - 10.24.31.0_ | | | |
C2: 10.24.16.0/20 \ | | _10.24.12.0 - 10.24.15.0__ | |
\| | / C4: 10.24.12.0/20 \ | |
| |/ \| |
10.24.8.0 - 10.24.11.0___/| PA |\ | PB |
C3: 10.24.8.0/22 | | \__10.24.32.0 - 10.24.33.0___| |
| | C5: 10.24.32.0/23 | |
| | | |
10.24.34.0 - 10.24.35.0__/| | | |
C6: 10.24.34.0/23 | | | |
+----+ +----+
|| ||
路由广告: || ||
|| ||
10.24.12.0/22 (C4) || 10.24.12.0/22 (C4) ||
10.32.0.0/20 (C7) || 10.24.32.0/23 (C5) ||
10.24.0.0/13 (PA) || 10.32.0.0/13 (PB) ||
|| ||
VV VV
+---------- 骨干网络 BB ----------+

6.2. 路由广告 (Routing Advertisements)

要遵循规则#1,PA需要广告它被分配的地址块和C7。由于C4是多宿主的并且通过PA作为主要路径,因此也必须广告它。C5是多宿主的并且通过PB作为主要路径。原则上 (并且在上面的示例中),不需要广告它,因为PB的最长匹配将自动选择PB作为主要路径,PA的聚合广告将用作次要路径。在实际实践中,C5通常会通过两个提供商广告。

从"PA"到"BB"的广告将是:

10.24.12.0/22 primary    (广告 C4)
10.32.0.0/20 primary (广告 C7)
10.24.0.0/13 primary (广告 PA 的其余部分)

对于PB,广告还必须包括C4和C5,以及其地址块。

从"PB"到"BB"的广告将是:

10.24.12.0/22 secondary  (广告 C4)
10.24.32.0/23 primary (广告 C5)
10.32.0.0/13 primary (广告 RB 的其余部分)

为了说明第5.1节中提到的问题诊断问题,考虑如果PA失去与C7 (从PB空间分配的站点) 的连接会发生什么。在有状态协议中,PA将向BB宣布 10.32.0.0/20 变得不可达。现在,当BB从其路由表中刷新此信息时,通过它发送到此目的地的任何未来流量将被转发到PB (根据规则#2,它将在那里被丢弃),这是由于PB的较不特定匹配 10.32.0.0/13。虽然这不会造成操作问题 (无论如何C7都不可达),但它确实在"BB"上创建了一些额外的流量 (并且对于试图用"traceroute"调试中断的人来说也可能令人困惑)。缓存此类不可达状态的机制可能很好,但超出了本文档的范围。