Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

BGP 多跳会话

了解 EBGP 多跳

BGP 是一种外部网关协议 (EGP),用于在不同自治系统中的路由器之间交换路由信息。以下是在路由器之间建立 EBGP 多跳的两种方法:

  • 当外部 BGP (EBGP) 对等方未直接相互连接时,它们必须穿过一个或多个非 BGP 路由器才能相互连接。

    配置多跳 EBGP 使对等方能够通过其他路由器以形成对等关系并交换更新消息。当瞻博网络路由设备需要使用不允许直接连接两个 EBGP 对等方的第三方路由器运行 EBGP 时,通常会使用这种类型的配置。EBGP 多跃点可在两个没有直接连接的 EBGP 对等方之间启用邻接方连接。

  • EBGP 连接的默认行为是使用对等方的物理接口地址通过单个物理跃点进行对等互连。在某些情况下,最好更改此默认的单跃点物理对等 EBGP 行为。其中一种情况是,当多个物理链路连接两个要成为 EBGP 对等方的路由器时。在这种情况下,如果其中一个点对点链路发生故障,备用链路上的可访问性仍然存在。

图 1: EBGP 多跳对等互连EBGP 多跳对等互连

在图 1 中,路由器 R1 属于 AS 1,路由器 R2 属于 AS 2。路由器之间的两个物理链路用于负载平衡。EBGP 多跃点对等互连也适用于一个物理链路。

以下配置示例有助于在这些多个物理链路之间建立单个 BGP 对等会话:

  1. 每个路由器都必须使用远程路由器的环路地址建立对等会话。您可以使用语句 配置此会话,该语句会更改 BGP 数据包中的对等地址标头信息。local-address

  2. 使用该 语句可以更改邻居物理地址的默认用法。multihop 此外,您还可以在 BGP 数据包中指定生存时间 (TTL) 值,以控制它们的传播距离。我们使用 TTL 值 1 来确保无法通过网络中的任何其他后门链路建立会话。

    注:

    配置多跃点后,默认情况下,Junos OS 会将 TTL 值设置为 64。

    TTL 值 1 足以启用到直连邻接方环路地址的 EBGP 会话。

  3. 每个路由器都必须具有到远程路由器环路地址的 IP 路由功能。此功能通常是通过使用静态路由将环路地址映射到接口物理地址来实现的。

示例:配置 EBGP 多跳会话

此示例说明如何配置与本地路由器相距多个跃点的外部 BGP (EBGP) 对等方。这种类型的会话称为 多跃点 BGP 会话。

要求

在配置此示例之前,不需要除设备初始化之外的特殊配置。

概述

启用多跳 EBGP 会话的配置需要两个 EBGP 对等方之间的连接。此示例使用静态路由在设备之间提供连接。

与语句中通常使用 物理地址的直接连接的 EBGP 会话不同,您必须通过指定间接连接的对等方的环路接口地址,将环路接口地址用于多跳 EBGP。neighbor 这样,EBGP 多跳类似于内部 BGP (IBGP)。

最后,必须添加 语句。multihop 或者,您可以使用语句 设置最长生存时间 (TTL) 值。ttl TTL 在 BGP 数据包的 IP 报头中携带。如果未指定 TTL 值,则使用系统的默认最大 TTL 值。多跃点 EBGP 会话的默认 TTL 值为 64。另一种选择是通过包含 语句来保留路由播发的 BGP 下一跃点值。no-nexthop-change

图 2 显示了典型的 EBGP 多跳网络。

设备 C 和设备 E 已建立 EBGP 会话。设备 D 不是启用 BGP 的设备。所有设备都通过静态路由进行连接。

图 2: 具有 EBGP 多跳会话的典型网络具有 EBGP 多跳会话的典型网络

配置

CLI 快速配置

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

设备 C

设备 D

设备 E

设备 C

分步过程

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。在配置模式下使用 CLI 编辑器https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

要配置设备 C:

  1. 配置直连设备 (to-D) 的接口,并配置环路接口。

  2. 配置与设备 E 的 EBGP 会话。

    该 语句指向设备 E 上的环路接口。neighbor

  3. 配置多跃点语句,使设备 C 和设备 E 成为 EBGP 对等方。

    由于对等方彼此相距两个跃点,因此该示例使用该 语句。ttl 2

  4. 使用静态路由配置与设备 E 的连接。

    您必须配置到环路接口地址和物理接口上地址的路由。

  5. 配置本地路由器 ID 和自治系统 (AS) 编号。

  6. 配置接受直接路由的策略。

    此方案的其他有用选项可能是接受通过 OSPF 或本地路由获知的路由。

成果

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

如果完成设备配置,请从配置模式输入 commit对拓扑中的所有 BGP 会话重复这些步骤。

配置设备 D

分步过程

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。在配置模式下使用 CLI 编辑器https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

要配置设备 D:

  1. 将 CLI 设置为设备 D。

  2. 配置直连设备的接口,并配置环路接口。

  3. 使用到环路接口地址的静态路由配置与其他设备的连接。

    在设备 D 上,不需要到物理地址的静态路由,因为设备 D 直接连接到设备 C 和设备 E。

  4. 配置本地路由器 ID。

成果

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

如果完成设备配置,请从配置模式输入 commit对拓扑中的所有 BGP 会话重复这些步骤。

配置设备 E

分步过程

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《Junos OS CLI 用户指南》中的在配置模式下使用 CLI 编辑器。在配置模式下使用 CLI 编辑器https://www.juniper.net/documentation/en_US/junos/information-products/pathway-pages/junos-cli/junos-cli.html

要配置设备 E:

  1. 将 CLI 设置为设备 E。

  2. 配置直连设备 (to-D) 的接口,并配置环路接口。

  3. 配置与设备 E 的 EBGP 会话。

    该 语句指向设备 C 上的环路接口。neighbor

  4. 配置语句以使 设备 C 和设备 E 成为 EBGP 对等方。multihop

    由于对等方彼此相距两个跃点,因此该示例使用该 语句。ttl 2

  5. 使用静态路由配置与设备 E 的连接。

    您必须配置到环路接口地址和物理接口上地址的路由。

  6. 配置本地路由器 ID 和自治系统 (AS) 编号。

  7. 配置接受直接路由的策略。

    此方案的其他有用选项可能是接受通过 OSPF 或本地路由获知的路由。

成果

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

如果完成设备配置,请从配置模式输入 commit

验证

确认配置工作正常。

验证连接

目的

确保设备 C 可以 ping 设备 E,并将环路接口地址指定为 ping 请求的源。

环路接口地址是 BGP 将使用的源地址。

操作

在操作模式下,从设备 C 输入 命令,然后从设备 E 输入 命令。ping 10.10.10.14 source 192.168.40.4ping 10.10.10.9 source 192.168.6.7

意义

如果 ping 有效,则静态路由将正常工作。

验证是否已建立 BGP 会话

目的

验证 BGP 会话是否已启动。

操作

在操作模式下,输入 show bgp summary 命令。

意义

输出显示两个设备各有一个对等方。没有对等方停机。

查看播发的路线

目的

检查以确保 BGP 正在播发路由。

操作

在操作模式下,输入 show route advertising-protocol bgp neighbor 命令。

意义

路由策略将静态路由从路由表导出到 BGP。send-static BGP 在对等方之间播发这些路由,因为已建立 BGP 对等会话。