Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

示例:为条件播发配置路由策略,以便在路由表中启用前缀的条件安装

此示例说明如何使用 BGP 导出策略在路由表中配置前缀的条件安装。

要求

此示例使用以下硬件和软件组件:

  • M 系列多服务边缘路由器、MX 系列 5G 通用路由平台或 T 系列核心路由器

  • Junos OS 9.0 或更高版本

概述

在此示例中,三个不同自治系统 (AS) 中的三台路由器通过 BGP 协议连接和配置。标记为 Internet 的路由器是上游路由器,在其 lo0.0 环路接口上配置了五个地址(172.16.11.1/32、172.16.12.1/32、172.16.13.1/32、172.16.14.1/32 和 172.16.15.1/32),并将一个额外的环路地址 (192.168.9.1/32) 配置为路由器 ID。这六个地址被导出到 BGP 中,以模拟连接到互联网的路由器的 BGP 路由表的内容,并向北方播发。

北方路由器和南方路由器分别使用 10.0.89.12/30 和 10.0.78.12/30 网络,并使用 192.168.7.1 和 192.168.8.1 作为各自的环路地址。

图 1 显示了此示例中使用的拓扑。

图 1: 有条件地安装前缀有条件地安装前缀

北方路由器将其从路由器互联网获知的 172.16.0.0/16 BGP 路由导出到南方路由器。这些路由可能表示互联网路由器域拥有的路由。此外,当存在特定的 172.16.11.1/32 路由时, 北方路由器也会播发默认路由。172.16.11.1 路由可能表示互联网路由器到提供完整互联网连接的第 1 层传输对等互连提供商的链接。

Router South 接收所有六个路由,但应仅在其路由表中安装默认路由和另一个特定路由 (172.16.11.1/32)。

总而言之,该示例满足以下要求:

  • 在“北”上, 发送所有 172.16/16 前缀。此外,仅当 inet.0 路由表中存在特定路由(在本例中为 172.16.11.1/32)时,才将 0/0 发送到南方。

  • 在 South 上,接受并安装路由和转发表中的默认路由和 172.16.11.1/32 路由。放弃所有其他路由。考虑到 South 可能 是一个无法接受 完整 互联网 路由 表的低端设备。因此 ,运营商只希望 South 具有默认 路由 和另一个特定前缀。

第一个要求是北方的出口政策满足的:

条件导出策略的逻辑可以概括如下:如果存在 0/0,并且存在 172.16.11.1/32,则发送 0/0 前缀。这意味着如果 172.16.11.1/32 不存在,则不要发送 0/0。

第二个要求是南方的进口政策:

在此示例中,由于 South 上的导入策略,四个路由被丢弃。这是因为北方的出口政策泄露了从互联网接收的所有路由,而南方的进口政策排除了其中一些路线。

请务必了解,在 Junos OS 中,尽管导入策略(入站路由过滤器)可能会拒绝路由,不将其用于流量转发,也不会将其包含在发往其他对等方的播发中,但路由器会将这些路由保留为隐藏路由。这些隐藏路由不可用于策略或路由目的。但是,它们确实会占用路由器上的内存空间。筛选路由以控制保存在内存中并由路由器处理的信息量的服务提供商可能希望路由器完全丢弃被导入策略拒绝的路由。

可以使用命令 show route receive-protocol bgp neighbor-address hidden 查看隐藏的路由。然后,通过在 或 [edit protocols bgp group group-name] 层次结构级别配置keep all | none[edit protocols bgp]语句,可以从路由表中保留或删除隐藏的路由。

BGP 路由保留规则如下:

  • 默认情况下,从 BGP 获知的所有路由都将保留,但 AS 路径被循环的路由除外。(AS 路径包含本地 AS。)

  • 通过配置该 keep all 语句,从 BGP 获知的所有路由都将保留,即使在 AS 路径中有本地 AS 的路由也是如此。

  • 通过配置 keep none 该语句,BGP 将丢弃从对等方接收并被导入策略或其他健全性检查拒绝的路由。配置此语句且入站策略发生更改后,Junos OS 将重新播发对等方播发的所有路由。

配置 keep allkeep none 且对等方支持路由刷新时,本地说话人将发送刷新消息并执行导入评估。对于这些对等方,会话不会重新启动。若要确定对等方是否支持刷新,请在命令的show bgp neighbor输出中检查 。Peer supports Refresh capability

警告:

如果配置 keep all OR keep none 且对等方不支持会话重启,则会重新启动(抖动)关联的 BGP 会话。

拓扑学

配置

CLI 快速配置

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

路由器互联网

路由器北

路由器南

配置前缀的条件安装

分步过程

以下示例要求您在配置层次结构中导航各个级别。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在 配置模式下使用 CLI 编辑器

要配置前缀的条件安装,请执行以下操作:

  1. 配置构成三个路由器之间链路的路由器接口。

  2. 在路由器互联网上配置五个环路接口地址,以模拟从互联网获知的要导入到路由器南方路由表中的 BGP 路由,并配置一个将配置为路由器 ID 的附加地址 (192.168.9.1/32)。

    此外,在北方和南方路由器上配置环路接口地址。

  3. 在路由器北上配置静态默认路由以播发到路由器南。

  4. 定义从路由器北上的路由表导出前缀的条件。

  5. 分别在路由器互联网和北方路由器上定义导出策略(into-bgpconditional-export-bgp 和),以将路由播发至 BGP。

    注:

    确保在导出策略中引用条件( prefix_11 在步骤 4中配置)。

  6. 在南方路由器上定义导入策略 (import-selected-routes),以将北方路由器通告的某些路由导入其路由表中。

  7. 在所有三个路由器上配置 BGP,以启用自治系统之间的前缀流。

    注:

    确保将定义的导入和导出策略应用于相应的 BGP 组,以便进行前缀播发。

  8. 为所有三个路由器配置路由器 ID 和自治系统编号。

    注:

    在此示例中,路由器 ID 是根据在路由器的 lo0.0 接口上配置的 IP 地址配置的。

结果

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

设备互联网

设备北

设备南

如果完成路由器配置,请从配置模式输入 commit

验证

确认配置工作正常。

验证 BGP

目的

验证是否已在三个路由器之间建立 BGP 会话。

操作

在操作模式下,运行 show bgp neighbor neighbor-address 命令。

  1. 检查路由器互联网上的 BGP 会话,以验证北路由器是否为邻居。

  2. 检查北路由器上的 BGP 会话,验证路由器互联网是否为邻居。

检查这些输出中的以下字段,验证是否已建立 BGP 会话:

  • Peer— 检查是否列出了对等 AS 编号。

  • Local— 检查是否列出了本地 AS 编号。

  • State- 确保值为 Established。如果没有,请再次检查配置,并查看 show bgp neighbor 有关输出字段的更多详细信息。

同样,验证北路由器和南路由器是否彼此形成对等关系。

意义

在三个路由器之间建立 BGP 会话。

验证从路由器互联网到路由器北的前缀通告

目的

验证路由器北是否接收从路由器互联网发送的路由。

操作

  1. 在路由器互联网上的操作模式下,运行 show route advertising-protocol bgp neighbor-address 命令。

    输出验证路由器互联网是否将路由 172.16.11.1/32、172.16.12.1/32、172.16.13.1/32、172.16.14.1/32、172.16.15.1/32 和 192.168.9.1/32(用作路由器 ID 的环路地址)播发到路由器北。

  2. 在“北”路由器上的操作模式下,运行 show route receive-protocol bgp neighbor-address 命令。

    输出验证北路由器是否已收到路由器互联网通告的所有路由。

意义

路由器互联网发送的前缀已成功安装到路由器北上的路由表中。

验证从路由器北到路由器南的前缀通告

目的

验证从路由器互联网接收的路由和静态默认路由是否由路由器北播发到路由器南。

操作

  1. 在“北”路由器上的操作模式下,运行 show route 0/0 exact 命令。

    输出验证北路由器上的路由表中是否存在静态默认路由 (0.0.0.0/0)。

  2. 在“北”路由器上的操作模式下,运行 show route advertising-protocol bgp neighbor-address 命令。

    输出验证北路由器是否正在将静态路由和从路由器互联网接收的 172.16.11.1/32 路由以及许多其他路由播发到路由器南。

验证用于安装前缀的 BGP 导入策略

目的

验证 BGP 导入策略是否成功安装所需的前缀。

操作

通过检查路由表中是否仅安装了来自路由器北的静态默认路由和来自路由器南的 172.16.11.1/32 路由,查看南路由器上的导入策略是否正常运行。

在操作模式下,运行 show route receive-protocol bgp neighbor-address 命令。

输出验证 BGP 导入策略在路由器南上是否正常运行,只有来自路由器北的静态默认路由 0.0.0.0/0 和来自路由器互联网的 172.16.11.1/32 路由泄漏到路由器南上的路由表中。

意义

由于配置了 BGP 导入策略,前缀安装成功。

验证从路由器北到路由器南的条件导出

目的

验证当设备互联网停止发送 172.16.11.1/32 路由时,设备北是否停止发送默认的 0/0 路由。

操作

  1. 通过停用环路接口上的 172.16.11.1/32 地址,使设备 Internet 停止发送 172.16.11.1/32 路由。

  2. 在“北”路由器上的操作模式下,运行 show route advertising-protocol bgp neighbor-address 命令。

    输出验证北路由器未将默认路由播发至南路由器。这是 172.16.11.1/32 路由不存在时的预期行为。

  3. 重新激活设备互联网环路接口上的 172.16.11.1/32 地址。

验证是否存在策略隐藏的路由(可选)

目的

验证是否存在由在南方路由器上配置的导入策略隐藏的路由。

注:

本节演示了您可以根据需要对配置进行的各种更改的效果。

操作

通过以下方式查看从路由器南部路由表中隐藏的路由:

  • 使用 hidden 命令的选项 show route receive-protocol bgp neighbor-address

  • 停用导入策略。

  1. 在操作模式下,运行 show route receive-protocol bgp neighbor-address hidden 命令以查看隐藏的路由。

    输出验证是否存在由南方路由器上的导入策略(172.16.12.1/32、172.16.13.1/32、172.16.14.1/32 和 172.16.15.1/32)隐藏的路由。

  2. 通过在层次结构级别配置deactivate import[edit protocols bgp group group-name]语句来停用 BGP 导入策略。

  3. show route receive-protocol bgp neighbor-address停用导入策略后,运行操作模式命令以检查路由。

    输出验证是否存在以前隐藏的路由(172.16.12.1/32、172.16.13.1/32、172.16.14.1/32 和 172.16.15.1/32)。

  4. 通过在层次结构级别分别[edit protocols bgp group group-name]配置 和 activate importkeep none 语句,激活 BGP 导入策略并从路由表中删除隐藏的路由。

  5. 在操作模式下,在激活导入策略并配置keep none语句后运行show route receive-protocol bgp neighbor-address hidden命令以检查路由。

    输出验证由于配置 keep none 的语句,隐藏的路由是否未在路由表中维护。