Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

配置 BFD

使用以下示例在设备上配置双向转发检测 (BFD)。

示例:为静态路由配置 BFD,以便更快地检测网络故障

此示例说明了如何为静态路由配置双向转发检测 (BFD)。

要求

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

概述

静态路由有许多实际应用。静态路由通常用于网络边缘,以支持连接到剩余网络,鉴于其入口和出口为单点,因此非常适合静态路由的简单性。在 Junos OS 中,静态路由的全局优先级为 5。如果指定的下一跃点可访问,则静态路由将被激活。

在此示例中,您将使用下一跃点地址 172.16.1.2 配置从提供商网络到客户网络的静态路由 192.168.47.0/24。您还可以使用下一跃点地址 172.16.1.1 配置从客户网络到提供商网络的静态默认路由 0.0.0.0/0。

出于演示目的,设备 B 和设备 D 上配置了一些环路接口。这些环路接口提供 ping 地址,从而验证静态路由是否正常工作。

图 1 显示了示例网络。

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

拓扑结构

配置

CLI 快速配置

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

设备 B

设备 D

过程

分步程序

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

要为静态路由配置 BFD:

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

  2. 在设备 B 上,创建静态路由并设置下一跳地址。

  3. 在设备 B 上,为静态路由配置 BFD。

  4. 在设备 B 上,配置 BFD 的跟踪作。

  5. 如果完成设备 B 的配置,请提交配置。

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

  7. 在设备 D 上,创建静态路由并设置下一跳地址。

  8. 在设备 D 上,为静态路由配置 BFD。

  9. 在设备 D 上,配置 BFD 的跟踪作。

  10. 如果完成设备 D 的配置,请提交配置。

结果

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

设备 B

设备 D

验证

确认配置工作正常。

验证 BFD 会话是否已开启

目的

验证 BFD 会话是否已开启,并查看有关 BFD 会话的详细信息。

行动

在作模式下,输入命令 show bfd session extensive

注意:

description Site- <xxx>仅在 SRX 系列防火墙上受支持。

如果每个客户端都有多个描述字段,则它会在第一个描述字段中显示“以及更多”。

意义

输出表示 TX interval 1.000, RX interval 1.000 使用语句配置 minimum-interval 的设置。所有其他输出均表示 BFD 的默认设置。要修改默认设置,请在语句下 bfd-liveness-detection 添加可选语句。

查看详细的 BFD 事件

目的

如果需要,查看 BFD 跟踪文件的内容以帮助进行故障排除。

行动

在作模式下,输入命令 file show /var/log/bfd-trace

意义

BFD 消息正在写入跟踪文件。

示例:在内部 BGP 对等会话上配置 BFD

此示例说明如何使用双向转发检测 (BFD) 协议配置内部 BGP (IBGP) 对等会话,以检测网络故障。

要求

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

概述

在 IBGP 会话上启用 BFD 的最低配置是在 bfd-liveness-detection minimum-interval 参与 BFD 会话的所有邻接方的 BGP 配置中包含该语句。该 minimum-interval 语句指定故障检测的最小传输和接收间隔。具体而言,此值表示本地路由设备传输 hello 数据包的最小间隔,以及路由设备预期从已与其建立 BFD 会话的邻接方接收回复的最小间隔。可以配置 1 到 255,000 毫秒之间的值。

或者,您可以使用 and transmit-interval minimum-interval minimum-receive-interval 语句分别指定最小传输和接收间隔。有关这些语句和其他可选 BFD 配置语句的信息,请参阅 bfd-liveness-detection

注意:

根据您的网络环境,以下附加建议可能适用:

  • 为防止在常规路由引擎切换事件期间发生 BFD 抖动,请为基于路由引擎的会话指定 5000 毫秒的最小间隔。此最小值是必需的,因为在常规路由引擎切换事件期间,RPD、MIBD 和 SNMPD 等进程对 CPU 资源使用的次数超过了指定的阈值。因此,由于缺乏 CPU 资源,BFD 处理和调度会受到影响。

  • 若要使 BFD 会话在双机箱群集控制链路场景期间保持开启,当第一个控制链路出现故障时,请指定 6000 毫秒的最小间隔,以防止 LACP 在基于路由引擎的会话的辅助节点上抖动。

  • 对于具有大量 BFD 会话的大规模网络部署,请为基于路由引擎的会话指定最小间隔 300 毫秒,为分布式 BFD 会话指定 100 毫秒。

  • 对于具有大量 BFD 会话的超大规模网络部署,请联系瞻博网络客户支持以获取更多信息。

  • 在配置不间断活动路由 (NSR) 时,要使 BFD 会话在路由引擎切换事件期间保持开启,请为基于路由引擎的会话指定 2500 毫秒的最小间隔。对于配置了 NSR 的分布式 BFD 会话,建议的最小间隔保持不变,仅取决于您的网络部署。

默认路由实例(主路由器)、路由实例和逻辑系统支持 BFD。此示例显示逻辑系统上的 BFD。

图 2 显示了具有内部对等会话的典型网络。

图 2:具有 IBGP 会话的 Typical Network with IBGP Sessions典型网络

配置

CLI 快速配置

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

设备 A

设备 B

设备 C

配置设备 A

分步程序

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅 《CLI 用户指南》中的在配置模式下使用 CLI 编辑器

要配置设备 A:

  1. 将 CLI 设置为逻辑系统 A。

  2. 配置接口。

  3. 配置 BGP。

    即使设备 A 未直接连接到设备 C,设备 B 和设备 C 也包含这些 neighbor 语句。

  4. 配置 BFD。

    您必须在连接对等方上配置相同的最小间隔。

  5. (选答)配置 BFD 跟踪。

  6. 配置 OSPF。

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

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

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

  9. 如果完成设备配置,请从配置模式进入。 commit 重复这些步骤以配置设备 B 和设备 C。

结果

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

验证

确认配置工作正常。

验证是否已启用 BFD

目的

验证是否在 IBGP 对等方之间启用了 BFD。

行动

在作模式下,输入命令 show bgp neighbor 。您可以使用 | match bfd 过滤器缩小输出范围。

意义

输出显示,逻辑系统 A 有两个启用了 BFD 的邻接方。未启用 BFD 时,输出将显示 BFD: disabled, down,并且该 <BfdEnabled> 选项不存在。如果启用了 BFD 且会话已关闭,则输出将显示 BFD: enabled, down。输出还显示,由于配置了跟踪作,因此正在将与 BFD 相关的事件写入日志文件。

验证 BFD 会话是否已开启

目的

验证 BFD 会话是否已开启,并查看有关 BFD 会话的详细信息。

行动

在作模式下,输入命令 show bfd session extensive

意义

输出表示 TX interval 1.000, RX interval 1.000 使用语句配置 minimum-interval 的设置。所有其他输出均表示 BFD 的默认设置。要修改默认设置,请在语句下 bfd-liveness-detection 添加可选语句。

查看详细的 BFD 事件

目的

如果需要,查看 BFD 跟踪文件的内容以帮助进行故障排除。

行动

在作模式下,输入命令 file show /var/log/A/bgp-bfd

意义

在建立路由之前,该 No route to host 消息将显示在输出中。建立路由后,最后两行显示两个 BFD 会话都启动。

停用和重新激活环路接口后查看详细的 BFD 事件

目的

检查关闭路由器或交换机然后重新启动后会发生什么情况。要模拟关闭路由器或交换机,请停用逻辑系统 B 上的环路接口。

行动
  1. 从配置模式,输入命令 deactivate logical-systems B interfaces lo0 unit 2 family inet

  2. 在作模式下,输入命令 file show /var/log/A/bgp-bfd

  3. 从配置模式,输入命令 activate logical-systems B interfaces lo0 unit 2 family inet

  4. 在作模式下,输入命令 file show /var/log/A/bgp-bfd

示例:为 OSPF 配置 BFD

此示例说明了如何为 OSPF 配置双向转发检测 (BFD) 协议。

要求

开始之前:

概述

除了调整 OSPF 发送间隔和无效间隔设置以提高路由融合度外,还可以配置 BFD。BFD 协议是一种简单的hello机制,用于检测网络中的故障。BFD 故障检测计时器的计时器限制比 OSPF 故障检测机制更短,从而提供更快的检测。

BFD 在无法快速检测故障的接口(如以太网接口)上很有用。其他接口(如 SONET 接口)已具有内置故障检测功能。无需在这些接口上配置 BFD。

在一对相邻的 OSPF 接口上配置 BFD。与 OSPF 发送间隔和无效间隔设置不同,您不必在 OSPF 区域中的所有接口上启用 BFD。

在此示例中,您可以通过在区域 0.0.0.0 中的邻接方 OSPF 接口 fe-0/1/0 上包含bfd-liveness-detection语句并将 BFD 数据包交换间隔配置为 300 毫秒来启用故障检测,将 4 配置为导致始发接口被声明关闭的错过 hello 数据包数,并通过包括以下设置仅为具有完全邻接方邻接关系的 OSPF 邻接方配置 BFD 会话:

  • full-neighbors-only — 在 Junos OS 9.5 及更高版本中,将 BFD 协议配置为仅为具有完全邻接邻接关系的 OSPF 邻接方建立 BFD 会话。默认行为是为所有 OSPF 邻接方建立 BFD 会话。

  • minimum-interval—配置本地路由设备传输 hello 数据包的最小间隔(以毫秒为单位),以及路由设备期望从已与其建立 BFD 会话的邻接方接收回复的最小间隔。可以配置一个介于 1 到 255,000 毫秒范围内的数字。您还可以使用 transmit-interval、minimum-intervalminimum-receive-interval 语句分别指定最小传输间隔和接收间隔。

    注意:

    根据您的网络环境,以下附加建议可能适用:

    • 对于具有大量 BFD 会话的大规模网络部署,请指定不少于 500 毫秒的最小间隔。建议间隔为 1000 毫秒,以避免任何不稳定问题。

      注意:
      • 对于 bfdd 进程,设置的检测时间间隔小于 300 毫秒。如果系统上运行了高优先级进程(如 ppmd),则 CPU 可能会在 ppmd 进程而不是 bfdd 进程上花费时间。

      • 对于分支机构 SRX 系列防火墙,建议将 1000 毫秒作为 BFD 数据包的最短激活时间间隔。

      • 对于 vSRX 3.0,建议将 300 毫秒作为 BFD 数据包的最短激活时间间隔。

    • 对于具有大量 BFD 会话的超大规模网络部署,请联系瞻博网络客户支持以获取更多信息。

    • 在配置不间断活动路由 (NSR) 时,要使 BFD 会话在路由引擎切换事件期间保持开启,请为基于路由引擎的会话指定最小间隔 2500 毫秒。对于配置了 NSR 的分布式 BFD 会话,建议的最小间隔保持不变,仅取决于您的网络部署。

  • multiplier — 配置邻接方未收到的导致始发接口声明关闭的 hello 数据包数。默认情况下,三个错过的 hello 数据包会导致始发接口声明关闭。可以配置 1 到 255 范围内的值。

拓扑结构

配置

过程

CLI 快速配置

要快速配置 OSPF 的 BFD 协议,请复制以下命令,将其粘贴到文本文件中,移除所有换行符,更改任何必要的详细信息以匹配您的网络配置,将命令复制并粘贴到 [edit] 层次结构级别的 CLI 中,然后从配置模式进入。commit

分步程序

要在一个相邻接口上为 OSPF 配置 BFD 协议:

  1. 创建 OSPF 区域。

    注意:

    要指定 OSPFv3,请在层次结构级别包含[edit protocols]ospf3语句。

  2. 指定接口。

  3. 指定最小传输和接收间隔。

  4. 配置导致始发接口声明关闭的错过 hello 数据包数。

  5. 仅为具有完全邻接方邻接的 OSPF 邻接方配置 BFD 会话。

  6. 如果完成设备配置,请提交配置。

    注意:

    在另一个相邻接口上重复整个配置。

结果

输入命令以 show protocols ospf 确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置。

要确认您的 OSPFv3 配置,请输入命令 show protocols ospf3

验证

确认配置工作正常。

验证 BFD 会话

目的

验证 OSPF 接口是否具有活动的 BFD 会话,以及会话组件配置是否正确。

行动

在作模式下,输入命令 show bfd session detail

意义

输出显示有关 BFD 会话的信息。

  • 地址字段显示邻接方的 IP 地址。

  • 接口字段显示您为 BFD 配置的接口。

  • “状态”字段显示邻接方的状态,并应显示“完整”,以反映您配置的完整邻接方邻接。

  • 传输间隔字段显示您配置的用于发送 BFD 数据包的时间间隔。

  • “乘数”字段显示您配置的乘数。

示例:为 IS-IS 配置 BFD

此示例介绍如何配置双向转发检测 (BFD) 协议以检测 IS-IS 网络中的故障。

注意:

对于 QFX10000 系列交换机上的 IPV6,ISIS 不支持 BFD。

要求

开始之前,在两台路由器上配置 IS-IS。有关所需 IS-IS 配置的信息,请参阅 示例:配置 IS-IS

注意:

我们在 CLI 快速配置部分中提供了 IS-IS 配置,但不包括 IS-IS 配置的分步介绍。

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

  • Junos OS 7.3 或更高版本

    • 使用 Junos OS 22.4 版进行更新和重新验证

  • M Series、MX 系列 和 T Series 路由器

概述

此示例显示了两个相互连接的路由器。每个路由器上均配置一个环路接口。两台路由器上均配置了 IS-IS 和 BFD 协议。

拓扑结构

图 3 显示了示例网络。

图 3:为 IS-IS 配置 BFD Configuring BFD for IS-IS

配置

CLI 快速配置

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

路由器 R1

路由器 R2

过程

分步程序

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅在 配置模式下使用 CLI 编辑器

注意:

要简单地为 IS-IS 配置 BFD,只需要该 minimum-interval 语句。当您使用该 bfd-liveness-detection 语句而不指定任何参数时,BFD 协议会为所有其他配置语句选择默认参数。

注意:

您可以随时更改参数,而无需停止或重新启动现有会话。BFD 会自动调整到新的参数值。但是,在值与每个 BFD 对等方重新同步之前,不会对 BFD 参数进行更改。

要为路由器 R1 和 R2 上的 IS-IS 配置 BFD:

注意:

我们仅显示 R1 的步骤。

  1. 配置检测时间适应阈值,该阈值必须大于乘数乘以最小间隔。

  2. 配置故障检测的最小发射和接收间隔。

  3. 仅配置故障检测的最小接收间隔。

  4. 禁用 BFD 适配。

  5. 配置传输间隔的阈值,该阈值必须大于最小传输间隔。

  6. 配置故障检测的最小传输间隔。

  7. 配置乘数,即邻接方未收到的因导致始发接口声明关闭而发送的 hello 数据包数。

  8. 配置用于检测的 BFD 版本。

    默认设置是自动检测版本。

结果

在配置模式下,发出命令以 show protocols isis interface 确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置。

验证

确认配置工作正常。

验证路由器 R1 和 R2 之间的连接

目的

确保路由器 R1 和 R2 可以相互访问。

行动

Ping 另一个路由器以根据网络拓扑检查两个路由器之间的连接。

意义

路由器 R1 和 R2 能够相互 ping 。

验证是否已配置 IS-IS

目的

确保 IS-IS 实例在两台路由器上都运行。

行动

使用该 show isis database 语句检查 IS-IS 实例是否在路由器 R1 和 R2 上运行。

意义

R1 和 R2 路由器上均配置了 IS-IS。

验证是否已配置 BFD

目的

确保 BFD 实例在两个路由器 R1 和 R2 上运行。

行动

使用该 show bfd session detail 语句检查路由器上是否运行 BFD 实例。

意义

路由器 R1 和 R2 上配置了 BFD,用于检测 IS-IS 网络中的故障。

示例:为 RIP 配置 BFD

此示例说明了如何为 RIP 网络配置双向转发检测 (BFD)。

要求

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

概述

要启用故障检测,请包含以下语 bfd-liveness-detection 句:

或者,您可以通过包含 threshold 语句来指定检测时间适应阈值。当 BFD 会话检测时间适应到等于或大于阈值的值时,将发送单个陷阱和系统日志消息。

要指定故障检测的最小传输和接收间隔,请包含该 minimum-interval 语句。此值表示本地路由设备传输 hello 数据包的最小间隔,以及路由设备期望从已与其建立 BFD 会话的邻接方接收回复的最小间隔。可以配置 1 到 255,000 毫秒范围内的值。此示例将最小间隔设置为 600 毫秒。

注意:

根据您的网络环境,以下附加建议可能适用:

  • 分布式BFD的建议最小间隔为100毫秒,a multiplier 为3。

  • 对于具有大量 BFD 会话的超大规模网络部署,请联系瞻博网络客户支持以获取更多信息。

  • 在配置不间断活动路由 (NSR) 时,要使 BFD 会话在路由引擎切换事件期间保持开启,请为基于路由引擎的会话指定最小间隔 2500 毫秒。对于配置了不间断活动路由的分布式 BFD 会话,最小间隔建议保持不变,仅取决于您的网络部署。

您可以选择性地分别指定最小传输间隔和接收间隔。

要仅指定故障检测的最小接收间隔,请包含该 minimum-receive-interval 语句。此值表示本地路由设备预期从已与其建立 BFD 会话的邻接方接收回复的最小间隔。可以配置 1 到 255,00 毫秒范围内的值。

要仅指定故障检测的最小传输间隔,请包含该 transmit-interval minimum-interval 语句。此值表示本地路由设备将 hello 数据包传输到与之建立 BFD 会话的邻接方的最小间隔。可以配置 1 到 255,000 毫秒范围内的值。

要指定邻接方未收到的导致始发接口声明关闭的 hello 数据包数,请包含该 multiplier 语句。默认设置为 3,您可以配置 1 到 255 范围内的值。

要指定用于检测传输间隔适应的阈值,请包含该 transmit-interval threshold 语句。阈值必须大于传输间隔。

要指定用于检测的 BFD 版本,请包含该 version 语句。默认设置是自动检测版本。

您可以通过在层次结构级别包含traceoptions[edit protocols bfd]该语句来跟踪 BFD作。

在 Junos OS 9.0 及更高版本中,您可以将 BFD 会话配置为不适应不断变化的网络条件。要禁用 BFD 适配,请包含该 no-adaptation 语句。除非最好不要在网络中启用 BFD 适配,否则建议不要禁用 BFD 适配。

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

图 4:RIP BFD 网络拓扑结构 RIP BFD Network Topology

CLI 快速配置 显示了图 4 中所有设备的配置。分 步过程部分 介绍了设备 R1 上的步骤。

拓扑结构

配置

过程

CLI 快速配置

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

设备 R1

设备 R2

设备 R3

分步程序

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅 《CLI 用户指南》中的在配置模式下使用 CLI 编辑器

要为 RIP 网络配置 BFD:

  1. 配置网络接口。

  2. 创建 RIP 组并添加接口。

    要在 Junos OS 中配置 RIP,您必须配置一个组,其中包含启用 RIP 的接口。无需在环路接口上启用 RIP。

  3. 创建路由策略以通告直接路由和 RIP 获知路由。

  4. 应用路由策略。

    在 Junos OS 中,您只能在组级别应用 RIP 导出策略。

  5. 启用 BFD。

  6. 配置跟踪作以跟踪 BFD 消息。

结果

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

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

验证

确认配置工作正常。

验证 BFD 会话是否已启动

目的

确保 BFD 会话正在运行。

行动

在作模式下,输入命令 show bfd session

意义

输出显示没有身份验证失败。

检查 BFD 跟踪文件

目的

使用跟踪作验证是否正在交换 BFD 数据包。

行动

在作模式下,输入命令 show log

意义

输出显示 BFD 的正常功能。

为 LAG 配置微型 BFD 会话

双向转发检测 (BFD) 协议是一种简单的检测协议,可快速检测转发路径中的故障。链路聚合组 (LAG) 将处于点对点连接的设备之间的多个链路组合在一起,从而增加带宽、提供可靠性并实现负载平衡。要在 LAG 接口上运行 BFD 会话,请在 LAG 捆绑包中的每个 LAG 成员链路上配置独立的异步模式 BFD 会话。独立的微型 BFD 会话不是单个 BFD 会话监视 UDP 端口的状态,而是单个 BFD 会话监视各个成员链路的状态。

注意:

从 Junos OS 演化版 20.1R1 版开始,独立的微双向转发检测 (BFD) 会话将基于链路聚合组 (LAG) 捆绑包的每个成员链路启用。

要为聚合以太网接口启用故障检测:

  1. 层次结构级别的[edit interfaces aex aggregated-ether-options]配置中包括以下语句:
  2. 为 LAG 配置 BFD 会话的身份验证标准。

    要指定身份验证标准,请包含以下 authentication 语句:

    • 指定用于对 BFD 会话进行身份验证的算法。您可以使用以下算法之一进行身份验证:

      • 密钥 MD5

      • 键控 SHA-1

      • 细致键控-MD5

      • 细致键控 SHA-1

      • 简单密码

    • 要配置密钥链,请指定与 BFD 会话的安全密钥关联的名称。您指定的名称必须与语句中 authentication-key-chains key-chain 在层次结构级别配置 [edit security] 的密钥链之一匹配。

    • 在 BFD 会话上配置松散身份验证检查。仅用于 BFD 会话两端可能未配置身份验证的过渡期。

  3. 为聚合以太网接口配置 BFD 计时器。

    要指定 BFD 计时器,请包含以下语 detection-time 句:

    指定阈值。这是检测 BFD 邻接方的最大时间间隔。如果传输间隔大于此值,设备将触发陷阱。

  4. 配置抑制间隔值,以设置在向 LAG 网络中的其他成员发送状态更改通知之前,BFD 会话必须保持开启的最短时间。

    要指定抑制间隔,请包含以下语 holddown-interval 句:

    可以配置一个介于 0 到 255,000 毫秒范围内的数字,默认值为 0。如果 BFD 会话关闭,然后在抑制间隔内重新启动,则计时器将重新启动。

    此值表示本地路由设备传输 BFD 数据包的最小间隔,以及路由设备期望从已与其建立 BFD 会话的邻接方接收回复的最小间隔。可以配置一个介于 1 到 255,000 毫秒范围内的数字。您还可以分别指定最小传输间隔和接收间隔。

  5. 配置 BFD 会话的源地址。

    要指定本地地址,请包含以下语 local-address 句:

    BFD 本地地址是 BFD 会话源的环路地址。

    注意:

    从 Junos OS 16.1 版开始,您还可以将此功能配置为将 AE 接口地址作为微型 BFD 会话中的本地地址。对于 IPv6 地址族,请在使用 AE 接口地址配置此功能之前禁用重复地址检测。要禁用重复地址检测,请在层次结构级别包含[edit interface aex unit y family inet6]dad-disable语句。

    从 16.1R2 版开始,Junos OS 会在配置提交之前,根据接口或环路 IP 地址检查并验证配置的微型 BFD local-address 。Junos OS 会对 IPv4 和 IPv6 微型 BFD 地址配置执行此检查,如果它们不匹配,则提交失败。配置的微型 BFD local-address 应与对等路由器上配置的微型 BFD neighbour-address 匹配。

    基于 AFT 的 Trio 线卡(MPC10 及更新版本)使用不同的硬件设计。如果在接口上激活了微型 BFD,则收到的数据包将不会成为 AE 接口接口组的一部分,并且不会将 lo0.0 上的过滤器条款与接口组匹配。为确保条款匹配,您可以使用端口 6784 在 lo0.0 上设置单独的过滤器。

  6. 指定指示传输和接收数据的时间间隔的最小间隔。

    此值表示本地路由设备传输 BFD 数据包的最小间隔,以及路由设备期望从已与其建立 BFD 会话的邻接方接收回复的最小间隔。可以配置一个介于 1 到 255,000 毫秒范围内的数字。您还可以分别指定最小传输间隔和接收间隔。

    要指定故障检测的最小传输和接收间隔,请包含以下 minimum-interval 语句:

    注意:

    根据您的网络环境,以下附加建议可能适用:

    • 集中式 BFD 的建议最小间隔为 300 毫秒,a multiplier 为 3,分布式 BFD 的建议最小间隔为 100 毫秒,a multiplier 为 3。

    • 对于具有大量 BFD 会话的超大规模网络部署,请联系瞻博网络客户支持以获取更多信息。

    • 若要使 BFD 会话在配置不间断活动路由时在路由引擎切换事件期间保持开启状态,请为基于路由引擎的会话指定最小间隔 2500 毫秒。对于配置了不间断活动路由的分布式 BFD 会话,最小间隔建议保持不变,仅取决于您的网络部署。

  7. 仅指定故障检测的最小接收间隔,方法是包含以下 minimum-receive-interval 语句:

    此值表示本地路由设备期望从已与其建立 BFD 会话的邻接方接收回复的最小间隔。可以配置一个介于 1 到 255,000 毫秒范围内的数字。

  8. 指定邻接方未收到的导致始发接口声明关闭的 BFD 数据包数,方法是包含以下语multiplier句:

    默认值为 3。可以配置一个介于 1 到 255 的范围内的数字。

  9. 在 BFD 会话中配置邻接方。

    邻接方地址可以是 IPv4 或 IPv6 地址。

    要指定 BFD 会话的下一跃点,请包含以下 neighbor 语句:

    BFD 邻接方地址是 BFD 会话远程目标的环路地址。

    注意:

    从 Junos OS 16.1 版开始,您还可以将远程目的的 AE 接口地址配置为微型 BFD 会话中的 BFD 邻接方地址。

  10. (可选)将 BFD 会话配置为不适应不断变化的网络条件。

    要禁用 BFD 适配,请包含以下 no-adaptation 语句:

    注意:

    除非最好不要在网络中进行 BFD 适配,否则建议不要禁用 BFD 适配。

  11. 通过包含threshold以下语句来指定用于检测检测时间适应的阈值:

    当 BFD 会话检测时间适应到等于或大于阈值的值时,将发送单个陷阱和系统日志消息。检测时间基于最小间隔或最小接收间隔值的乘数。对于这些配置的值,阈值必须高于乘数。例如,如果最小接收间隔为 300 毫秒,乘数为 3,则总检测时间为 900 毫秒。因此,检测时间阈值的值必须大于 900。

  12. 仅指定故障检测的最小传输间隔,方法是包含以下 transmit-interval minimum-interval 语句:

    此值表示本地路由设备将 BFD 数据包传输到与之建立 BFD 会话的邻接方之间的最小间隔。可以配置 1 到 255,000 毫秒范围内的值。

  13. 通过包含transmit-interval threshold以下语句,指定用于检测传输间隔适应的传输阈值:

    阈值必须大于传输间隔。当 BFD 会话检测时间适应到大于阈值的值时,将发送单个陷阱和系统日志消息。检测时间基于最小间隔或最小接收间隔值的乘数。对于这些配置的值,阈值必须高于乘数。

  14. 通过包含version以下语句来指定 BFD 版本:

    默认设置是自动检测版本。

注意:
  • QFX 系列不支持该 version 选项。从 Junos OS 17.2R1 版开始,如果您尝试使用此命令,将出现警告。

  • 当两台设备都支持 BFD 时,此功能有效。如果仅在 LAG 的一端配置了 BFD,则此功能不起作用。

示例:为 LAG 配置独立的微型 BFD 会话

此示例说明如何为聚合以太网接口配置独立的微型 BFD 会话。

要求

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

  • 搭载 Junos Trio 芯片组的 MX 系列路由器

    注意:基于 AFT 的 Trio 线卡(MPC10 及更新版本)使用不同的硬件设计。如果在接口上激活了微型 BFD,则收到的数据包将不会成为 AE 接口接口组的一部分,并且不会将 lo0.0 上的过滤器条款与接口组匹配。为确保条款匹配,您可以使用端口 6784 在 lo0.0 上设置单独的过滤器。
  • 采用 4 类 FPC 或 5 类 FPC 的 T Series 路由器

    T 系列上的以下 PIC 类型支持适用于 LAG 的 BFD:

    • PC-1XGE-XENPAK(3型FPC),

    • PD-4XGE-XFP(4 型 FPC)、

    • PD-5-10XGE-SFPP(4 型 FPC),

    • 24x10GE (LAN/WAN) SFPP、12x10GE (LAN/WAN) SFPP、1X100GE Type 5 PIC

  • 具有 24X10GE (LAN/WAN) SFPP 的 PTX 系列路由器

  • 在所有设备上运行 Junos OS 13.3 或更高版本

概述

此示例包括两个直接连接的路由器。配置两个聚合以太网接口,AE0 用于 IPv4 连接,AE1 用于 IPv6 连接。在 AE0 捆绑包上配置微型 BFD 会话,使用 IPv4 地址作为两个路由器上的本地和邻居端点。在 AE1 捆绑包上配置微型 BFD 会话,使用 IPv6 地址作为两台路由器上的本地和邻居端点。此示例验证输出中独立的微型 BFD 会话是否处于活动状态。

拓扑结构

图 5 显示了示例拓扑。

图 5:为 LAG 配置独立的微型 BFD 会话 Network diagram showing routers R0 and R1 with Ethernet links AE0 and AE1 supporting IPv4 and IPv6 communication.

配置

CLI 快速配置

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

路由器 R0

路由器 R1

为聚合以太网接口配置微型 BFD 会话

分步程序

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅《CLI 用户指南》中的“在配置模式下使用 CLI 编辑器”。

注意:

对路由器 R1 重复此过程,修改每个路由器的相应接口名称、地址和任何其他参数。

要为路由器 R0 上的聚合以太网接口配置微型 BFD 会话,请执行以下作:

  1. 配置物理接口。

  2. 配置环路接口。

  3. 根据您的网络要求,在聚合以太网接口 ae0 上配置 IPv4 或 IPv6 地址的 IP 地址。

  4. 设置路由选项,创建静态路由,并设置下一跳地址。

    注意:

    您可以根据网络要求配置 IPv4 或 IPv6 静态路由。

  5. 配置链路聚合控制协议 (LACP)。

  6. 为聚合以太网接口 ae0 配置 BFD,并指定最小间隔、本地 IP 地址和邻居 IP 地址。

  7. 在聚合以太网接口 ae1 上配置 IP 地址。

    您可以根据网络要求分配 IPv4 或 IPv6 地址。

  8. 为聚合以太网接口 ae1 配置 BFD。

    注意:

    从 Junos OS 16.1 版开始,您还可以将此功能配置为将 AE 接口地址作为微型 BFD 会话中的本地地址。

    从 16.1R2 版开始,Junos OS 会在配置提交之前,根据接口或环路 IP 地址检查并验证配置的微型 BFD local-address 。Junos OS 会对 IPv4 和 IPv6 微型 BFD 地址配置执行此检查,如果它们不匹配,则提交失败。

  9. 配置 BFD 的跟踪选项以进行故障排除。

结果

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

如果完成设备配置,请提交配置。

验证

确认配置工作正常。

验证独立 BFD 会话是否已开启

目的

验证微型 BFD 会话是否已启动,并查看有关 BFD 会话的详细信息。

行动

在作模式下,输入命令 show bfd session extensive

意义

Micro BFD 字段表示在 LAG 中的链路上运行的独立 Micro BFD 会话。TX interval item, RX interval item 输出表示使用语句配置 minimum-interval 的设置。所有其他输出均表示 BFD 的默认设置。要修改默认设置,请在语句下 bfd-liveness-detection 添加可选语句。

查看详细的 BFD 事件

目的

如果需要,查看 BFD 跟踪文件的内容以帮助进行故障排除。

行动

在作模式下,输入命令 file show /var/log/bfd

意义

BFD 消息正在写入指定的跟踪文件。

为 PIM 配置 BFD

双向转发检测 (BFD) 协议是一种简单的hello机制,用于检测网络中的故障。BFD 适用于各种网络环境和拓扑结构。一对路由设备交换 BFD 数据包。Hello 数据包将以指定的定期间隔发送。当路由设备在指定时间间隔后停止接收回复时,将检测到邻接方故障。BFD 故障检测计时器的时间限制比协议无关组播 (PIM) hello 保持时间更短,因此可提供更快的检测速度。

BFD 故障检测计时器是自适应的,可以调整为更快或更慢。BFD 故障检测计时器值越低,故障检测越快,反之亦然。例如,如果邻接失败(即,计时器检测故障的速度较慢),计时器可以适应更高的值。或者,邻接方可以协商一个高于配置值的计时器值。当 BFD 会话抖动在 15 秒内发生 3 次以上时,计时器会适应更高的值。如果本地 BFD 实例是会话翻动的原因,则回退算法会将接收 (Rx) 间隔增加 2。如果远程 BFD 实例是会话翻动的原因,则传输 (Tx) 间隔将增加 2。您可以使用该 clear bfd adaptation 命令将 BFD 间隔计时器返回到其配置值。该 clear bfd adaptation 命令是无中断的,表示该命令不会影响路由设备上的流量。

您必须指定最小传输间隔和最小接收间隔,才能在 PIM 上启用 BFD。

要启用故障检测:

  1. 全局或在路由实例中配置接口。

    此示例显示全局配置。

  2. 配置最小传输间隔。

    这是路由设备将 hello 数据包传输到与其建立 BFD 会话的邻接方之间的最小间隔。指定小于 300 毫秒的间隔可能会导致不必要的 BFD 抖动。

  3. 配置路由设备期望从已与其建立 BFD 会话的邻接方接收回复的最小间隔。

    指定小于 300 毫秒的间隔可能会导致不必要的 BFD 抖动。

  4. (可选)配置其他 BFD 设置。

    除了单独设置接收间隔和发送间隔,不如为两者配置一个间隔。

  5. 配置 BFD 会话检测时间适应阈值。

    当检测时间适应到等于或大于阈值的值时,将发送单个陷阱和单个系统日志消息。

  6. 配置邻接方未收到的因导致始发接口声明关闭的 hello 数据包数。
  7. 配置 BFD 版本。
  8. 指定 BFD 会话不应适应不断变化的网络条件。

    除非最好不要在网络中启用 BFD 适配,否则建议不要禁用 BFD 适配。

  9. 通过检查命令的 show bfd session 输出来验证配置。

在 SRX 系列防火墙上启用专用的实时 BFD

默认情况下,SRX 系列防火墙在集中式 BFD 模式下运行。它们还支持分布式 BFD、专用 BFD 和实时 BFD。

专用 BFD

启用专用 BFD 会影响流量吞吐量,因为从数据平面处理中移除了一个 CPU 核心。

要在 SRX300、SRX320、SRX340、SRX345、SRX380、SRX1500、vSRX 和 vSRX3.0 设备上启用专用 BFD:

  1. 在层次结构级别包含[edit chassis]dedicated-ukern-cpu语句,然后提交配置。

    1. [edit]

    2. user@host# set chassis dedicated-ukern-cpu

      user@host# commit

      提交配置时,将显示以下重新启动系统的警告消息:

      warning: Packet processing throughput may be impacted in dedicated-ukernel-cpu mode. warning: A reboot is required for dedicated-ukernel-cpu mode to be enabled. Please use "request system reboot" to reboot the system. commit complete

  2. 重新启动设备以启用配置:

    1. user@host> request system reboot

  3. 验证专用 BFD 是否已启用。

    user@host> show chassis dedicated-ukern-cpu

    Dedicated Ukern CPU Status: Enabled

实时 BFD

启用实时 BFD 不会影响数据平面性能。在分布式模式下处理 BFD 的数据包转发引擎进程具有更高的优先级。这适用于使用的最大 BFD 会话数少于一半的情况。请参阅 此列表 ,了解每个 SRX 设备支持的最大 BFD 会话数。

注意:

有关分布式模式下 BFD 的详细信息,请参阅 了解 BFD 如何检测网络故障

要在 SRX300、SRX320、SRX340 和 SRX345 设备上启用实时 BFD:

  1. 在层次结构级别包含[edit chassis]realtime-ukern-thread语句,然后提交配置。

    1. [编辑]

    2. user@host# set chassis realtime-ukern-thread

      user@host# commit

      提交配置时,将显示以下重新启动系统的警告消息:

      WARNING: realtime-ukern-thread is enable. Please use the command request system reboot.

  2. 重新启动设备以启用配置:

    1. user@host> request system reboot

  3. 验证是否已启用实时 BFD。

    user@host> show chassis realtime-ukern-thread

    realtime Ukern thread Status: Enabled

SRX 平台支持 BFD

SRX 系列防火墙支持以下最大 BFD 会话数:

  • SRX300 和 SRX320 设备上最多四个会话。

  • 在 SRX340、SRX345 和 SRX380 设备上最多支持 50 个会话。

  • 在 SRX1500 设备上最多 120 个会话。

在所有 SRX 系列防火墙上,由于 CPU 密集型命令和 SNMP 遍历等原因触发的高 CPU 利用率会导致 BFD 协议在处理大型 BGP 更新时发生翻动。(平台是否支持取决于设备安装的 Junos OS 版本。)

在机箱群集模式下运行的 SRX 系列防火墙仅支持 BFD 集中模式。

下表显示了每个 SRX 系列防火墙支持的 BFD 模式。

表 1:SRX 系列防火墙支持的 BFD 模式

SRX 系列防火墙

集中式 BFD 模式

分布式 BFD

实时 BFD

专用核心

SRX300

默认

配置

配置(可选)

不支持

SRX320

默认

配置

配置(可选)

不支持

SRX340

默认

配置

配置

配置(可选)

SRX345

默认

配置

配置

配置(可选)

SRX380

默认

配置

配置

配置(可选)

SRX1500 BFD 故障检测时间 >= 500 毫秒,且未启用专用模式 BFD 故障检测时间< 500 毫秒且未启用专用模式 不支持 配置
SRX4100 BFD 故障检测时间 >= 500 毫秒 BFD 故障检测时间< 500 毫秒 不支持 不支持
SRX4200 BFD 故障检测时间 >= 500 毫秒 BFD 故障检测时间< 500 毫秒 不支持 不支持
SRX4600 BFD 故障检测时间 >= 500 毫秒 BFD 故障检测时间< 500 毫秒 不支持 不支持

带有 SPC2 卡的 SRX5000 系列设备

默认

不支持

不支持

不支持

带有 SPC3 卡的 SRX5000 系列设备

BFD 故障检测时间 >= 500 毫秒

BFD 故障检测时间< 500 毫秒

不支持

不支持

vSRX 3.0

BFD 故障检测时间> 500 毫秒

BFD 故障检测时间 <= 500ms

不支持

配置