Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

静态路由首选项和合格下一跃点

了解静态路由首选项和合格下一跃点

静态路由目标地址可以有多个与之关联的下一跃点。在这种情况下,将多个路由插入到路由表中,必须进行路由选择。由于路由选择的主要标准是 路由优先级,因此可以通过设置与特定下一跃点关联的路由优先级来控制用作特定目标主路由的路由。路由优先级较低的路由始终用于路由流量。未设置首选路由时,Junos OS 会随机选择安装在转发表中的下一跃点地址。

通常,分配给静态路由的默认属性适用于为静态路由配置的所有下一跃点地址。但是,如果您希望为特定路由配置两个可能的下一跃点地址,并将它们区别对待,则可以将一个地址定义为有条件的下一跃点。

符合条件的下一跃点允许您将一个或多个属性与特定的下一跃点地址相关联。您可以为特定的静态路由设置总体优先级,然后为合格的下一跃点指定不同的优先级。例如,假设两个下一跃点地址 (10.10.10.10 和 10.10.10.7) 与静态路由 192.168.47.5/32 相关联。将常规优先级分配给整个静态路由,然后仅将另一个优先级分配给有条件的下一跃点地址 10.10.10.7。例如:

在此示例中,为有条件的下一跃点 10.10.10.7 分配了优先级 6,并将下一跃点 10.10.10 分配为优先级 5。

注意:

preference] 层次结构中的[edit route route qualified-next-hopmetric选项仅适用于符合条件的下一跃点。有条件的下一跃点优先级和指标仅覆盖该特定合格下一跃点的路由优先级和指标,类似于路由首选项覆盖默认首选项和指标(针对该特定路由)。

注意:

从 Junos OS 15.1R4 版开始,路由器不再支持将静态路由指向绑定到订阅者的下一跃点的配置。通常,当 RADIUS 使用帧的 IP 地址属性分配下一跃点时,可能会发生这种情况。这种配置错误的另一种选择是让 RADIUS 服务器提供与静态路由匹配的帧路由属性。

示例:配置静态路由首选项和合格下一跃点以控制静态路由选择

此示例说明如何控制静态路由选择。

要求

在此示例中,除了设备初始化之外,不需要任何特殊配置。

概述

在此示例中,静态路由 192.168.47.0/24 可能有两个可能的下一跃点。由于一条链路的带宽更高,因此此链路是首选路径。为了实施此优先级,将 qualified-next-hop 语句包含在两设备的配置中。请参阅 图 1

图 1:控制静态路由选择 Controlling Static Route Selection

拓扑

配置

程序

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到层级的 [edit] CLI 中。

提供商网络中的设备 B

客户网络中的设备 D

逐步过程

以下示例要求您在配置层次结构中的各个级别上导航。有关如何操作的说明,请参阅 Junos OS CLI 用户指南中的在配置模式下使用 CLI 编辑器

要控制静态路由选择:

  1. 在设备 B 上,配置接口。

  2. 在设备 B 上,配置到客户网络的静态路由。

  3. 在设备 B 上,配置到客户网络的备份路由。

  4. 在设备 D 上,配置接口。

  5. 在设备 D 上,配置到外部网络的静态默认路由。

  6. 在设备 D 上,配置到外部网络的备份静态默认路由。

结果

通过发出 show interfacesshow routing-options 命令确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以更正配置。

完成设备配置后,请在两台设备上从配置模式输入 提交

验证

确认配置工作正常。

检查路由表

目的

请确保静态路由显示在设备 B 和设备 D 的路由表中。

行动
意义

路由表中的星号 (*) 表示活动路由。接下来会列出备份路由。

对远程地址执行 Ping 操作

目的

验证静态路由是否工作。

从设备 B 中,ping 设备 D 上的一个环路接口地址。

从设备 D 中,ping 设备 B 上的一个环路接口地址。

行动

确保备份路由成为活动路由

目的

如果主路由不可用,请确保备份辅助路由处于活动状态。

行动
  1. 通过停用设备 B 上的 ge-1/2/0.0 接口来禁用活动路由。

  2. 检查设备 B 的路由表。

意义

备份路由已成为活动路由。

使用静态路由保留 IP 地址

托管提供商为多个客户托管多个服务器,并希望节省其 IP 地址空间的使用。传统上,当托管提供商客户端添加新服务器时,会为服务器分配一小块 IP 地址,例如 /29 块,并且客户端的服务器都位于该 IP 地址块中。

问题(图示)

例如,客户 A 可能需要三个服务器,并将块分配为 10.3.3.0/29(10.3.3.0 到 10.3.3.7)。在这种情况下,会使用多个 IP 地址。这些地址包括网络和广播 IP 地址(10.3.3.0 和 10.3.3.7)、服务器连接的路由器网关地址以及各个服务器的地址。要分配三个服务器,必须分配八个 IP 地址。将单个 /24 网络分解为 32 /29 网络将导致在 256 个 IP 地址中,有 96 个 IP 地址,其中 /24 被网络、广播和网关地址占用。当这种影响在成千上万的托管提供商中成倍增加时,IP 地址空间远没有得到有效利用。 图 2 展示了这个问题。

图 2: IP 地址空间 Inefficient Use of IP Address Space使用效率低下

在此配置中,为每个客户分配一个 /29 块地址空间。对于每个块,网络、广播和网关地址无法用于服务器 IP 寻址,导致三个 IP 地址使用效率低下。此外,这些块会占用未使用的 IP 地址,以用于未来扩展。

解决 方案

要解决此问题,可以为路由器上的接口配置共享地址空间 (RFC 6598) 保留的 IPv4 前缀中的地址,并使用接口指向的静态路由。IANA 记录了 IPv4/10 的分配,用作共享地址空间。共享地址空间地址范围为 100.64.0.0/10。

路由器中的接口将从 RFC 6598 空间中分配一个 IP 地址,因此不会占用公开路由地址空间,并且使用接口上的静态路由处理连接。服务器中的接口配置了公开可路由地址,但路由器接口则不是。网络和广播地址从 RFC 6598 空间消耗,而不是公开路由地址空间。

从 Junos OS 17.1R1 开始的 QFX10000 交换机支持此功能。

图 3 显示了 IP 地址空间的有效利用情况。

图 3:使用共享地址空间 Configuration Using the Shared Address Space的配置

在此配置中,每个客户都会为每个服务器分配单独的 IP 地址。有一个静态路由可配置为主机路由。路由器中的接口将从 RFC 6598 空间中分配一个 IP 地址,因此不会占用公开路由地址空间,并且使用静态路由传出接口来处理连接。

配置

网关路由器上的客户 A 的配置类似于:

借助此配置,不会浪费可公开路由的 IP 地址。值得注意的是,当此配置中的数据包从路由器转发到客户 A 服务器 203.0.113.10 的服务器时,路由将被转发至 IP 地址为的 100.64.0.1接口 ge-1/0/1.0。

客户 A 的服务器配置如下:

此示例显示每个服务器一个主机路由,即 1:1 映射。如果得到维护,这可能等同于大量静态主机路由。出于扩展目的,我们需要在此环境中支持非主机路由。例如,如果此配置中有八个服务器的客户 C,那么在指出八个服务器连接的接口的路由器上分配 /29 路由要高效得多。如果向客户 C 分配的服务器 IP 从 203.0.114.8 到 203.0.114.15,并且这些 IP 通过接口 ge-1/0/2.0 进行连接,则其看起来是:

了解路由和转发表中的静态路由控制

您可以通过多种方式控制将静态路由导入路由和转发表中。主要方式包括为路由分配一个或多个以下属性:

  • retain — 在路由进程关闭或设备重新启动后,将路由保留在转发表中。

  • 无转发 — 防止路由被重新转为其他路由协议。

  • 被动 — 拒绝以路由为目的地的流量。

本主题包含以下部分:

路由保留

默认情况下,当路由进程关闭时,静态路由不会保留在转发表中。再次启动路由进程时,必须再次将配置为静态路由的任何路由添加到转发表。为避免这种延迟,可以将路由标记为 retain,以便在路由进程关闭后仍保留在转发表中。保留可确保路由始终在转发表,即使在系统重新启动后也是如此。

再转换防御

默认情况下,静态路由有资格由其他路由协议进行转发。在可能不希望在任何情况下重新转换这些静态路由的剩余区域,您可以将静态路由标记为 无重新转换

强制拒绝被动路由流量

通常,路由和转发表中仅包含活动路由。如果静态路由的下一跃点地址无法访问,则路由将标记为 被动,并且不会包括在路由或转发表中。要强制将路由包含在路由表中,而不考虑下一跃点可访问性,可以将路由标记为 被动路由。如果路由被标记为 被动 ,并且无法访问其下一跃点地址,则路由将包含在路由表中,并且将拒绝发往该路由的所有流量。

示例:防止静态路由被翻转

此示例说明如何防止将静态路由转发到 OSPF 中,从而防止路由出现在路由和转发表表中。

要求

在此示例中,除了设备初始化之外,不需要任何特殊配置。

概述

此示例说明如何配置路由策略,用于将静态路由再转换为 OSPF,但未读的静态路由除外,因为该路由已用 no-readvertise 语句标记。

拓扑

图 4 显示了示例网络。

图 4:连接到服务提供商 Customer Routes Connected to a Service Provider的客户路由

配置

程序

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到层级的 [edit] CLI 中。

设备 A

设备 B

设备 C

逐步过程

以下示例要求您在配置层次结构中的各个级别上导航。有关如何操作的说明,请参阅 Junos OS CLI 用户指南中的在配置模式下使用 CLI 编辑器

要配置设备 A:

  1. 将接口配置为设备 B。

  2. 配置 OSPF 以与设备 B 形成 OSPF 对等关系。

逐步过程

要配置设备 B:

  1. 将接口配置为设备 A 和设备 C。

  2. 配置一个或多个静态路由和自治系统 (AS) 编号。

  3. 配置路由策略。

    此策略会将静态路由从路由表导出到 OSPF。

  4. 包括该 no-readvertise 语句,以防止将 192.168.0.0/24 路由导出到 OSPF。

  5. 配置路由协议。

    BGP 配置与设备 C 形成外部 BGP (EBGP) 对等关系。

    OSPF 配置与设备 A 形成 OSPF 对等关系,并应用 发送静态 路由策略。

逐步过程

要配置设备 C:

  1. 创建设备 B 的接口,然后配置环路接口。

  2. 配置与设备 B 的 EBGP 对等会话。

  3. 配置 AS 编号。

结果

通过发出 show interfacesshow policy-optionsshow protocolsshow routing-options 命令来确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明,以更正配置。

设备 A

设备 B

设备 C

完成设备配置后,请从配置模式进入 提交

验证

确认配置工作正常。

检查路由表

目的

确保语句 no-readvertise 工作。

行动
  1. 在设备 A 上,运行 show route protocol ospf 命令,确保 192.168.0.0/24 路由不会出现在设备 A 的路由表中。

  2. 在设备 B 上,停用语句 no-readvertise

  3. 在设备 A 上,重新运行 show route protocol ospf 命令,以确保 192.168.0.0/24 路由显示在设备 A 的路由表中。

意义

语句 no-readvertise 正在按预期工作。

验证静态路由配置

目的

验证静态路由是否在路由表中,以及这些路由是否处于活动状态。

行动

从 CLI 中输入 show route terse 命令。

示例输出

命令名称

意义

输出显示当前 inet.0 路由表中的路由列表。验证以下信息:

  • 每个配置的静态路由都存在。路由按 IP 地址的升序列出。静态路由在输出的协议 (P) 列中使用 S 标识。

  • 每个静态路由都处于活动状态。处于活动状态的路由在“下一跃点”列中显示 下一跃点 IP 地址。如果路由的下一跃点地址无法访问,则下一跃点地址将标识为 “拒绝”。这些路由不是活动路由,但它们会出现在路由表中,因为设置了 被动 属性。

  • 每个静态路由的优先级是正确的。特定路由的优先级列在输出的 Prf 列中。

版本历史记录表
释放
描述
17.1R1
从 Junos OS 17.1R1 开始的 QFX10000 交换机支持此功能。