为 Cloud Router 路由器配置 BFD
借助 Cloud Router 路由器的双向转发检测 (BFD),您可以快速检测 BGP 启动或关闭事件等转发路径服务中断,从而实现更具弹性的混合网络。
您可以在 BGP 会话中为 VLAN 连接配置 BFD。为高可用性 VPN 隧道或路由器设备(该设备属于 Network Connectivity Center 的一部分)配置的 BGP 会话不支持 BFD。
如需详细了解 BFD,请参阅 Cloud Router 路由器双向转发检测 (BFD) 概览,其中介绍了 BFD 设置和计时器的完整说明。
准备工作
gcloud
如果您要使用本指南中的命令行示例,请执行以下操作:
- 安装或更新到 Google Cloud CLI 的最新版本。
- 设置默认区域和可用区。
API
如果希望使用本指南中的 API 示例,请设置 API 访问权限。
将 Cloud Router 路由器添加到 Cloud Interconnect
配置 BFD 之前,必须先设置以下连接选项之一,其中包括添加具有 BGP 会话的 Cloud Router 路由器:
在现有 BGP 会话上配置 BFD
您可以在先前为 VLAN 连接设置的 BGP 会话上配置 BFD。
如需在现有 BGP 会话中配置 BFD 设置,请按以下步骤操作。
控制台
在 Google Cloud 控制台中,前往 Cloud Router 路由器页面。
选择要更新的 Cloud Router 路由器。
在路由器详情页面上的 BGP 会话部分中,选择要更新的 BGP 会话。
在 BGP 会话详情页面中,点击
修改。完成所有非 BFD 设置。
在双向转发检测下,按照 BFD 设置和计时器中所述配置 BFD 选项。
必需:要启用 BFD,请将 BFD 会话初始化模式设置为
active
。
gcloud
运行 update-bgp-peer
命令:
gcloud compute routers update-bgp-peer ROUTER_NAME \ --project=PROJECT_ID \ --peer-name=PEER_NAME \ --interface=INTERFACE \ --ip-address=IP_ADDRESS \ --peer-asn=PEER_ASN \ --peer-ip-address=PEER_IP_ADDRESS \ --region=REGION \ --bfd-session-initialization-mode=BFD_SESSION_INITIALIZATION_MODE \ --bfd-min-receive-interval=BFD_MIN_RECEIVE_INTERVAL \ --bfd-min-transmit-interval=BFD_MIN_TRANSMIT_INTERVAL \ --bfd-multiplier=BFD_MULTIPLIER
请替换以下内容:
ROUTER_NAME
:您的 Cloud Router 路由器的名称PROJECT_ID
:是包含您的 Cloud Router 路由器的项目PEER_NAME
:您的 BGP 对等体的名称INTERFACE
:此 BGP 对等方的接口名称IP_ADDRESS
:您的 Cloud Router 路由器的 IP 地址PEER_ASN
:此 BGP 对等体的 BGP 自治系统编号 (ASN)PEER_IP_ADDRESS
:属于范围169.254.0.0/16
的对等路由器的链接本地地址REGION
:Cloud Router 路由器所在的区域按照 BFD 设置和计时器中所述配置 BFD 选项。
必需:如需启用 BFD,请将
BFD_SESSION_INITIALIZATION_MODE
设置为active
。
API
使用 routers.patch
方法更新 bgpPeers[].bfd
字段。
bgpPeers[]
字段接受 BGP 对等体数组。PATCH
此字段时,您将使用请求中包含的新数组覆盖现有 BGP 对等体数组。
发送
GET
请求以获取路由器的当前 BGP 对等体数组。如需了解详情,请参阅查看 BGP 会话配置。发送带有新 BGP 对等体数组的
PATCH
请求。在包含要更新 BFD 设置的 BGP 会话的数组元素中,修改bgpPeers[].bfd
字段:PATCH https://compute.googleapis.com/compute/projects/PROJECT_ID/regions/REGION/routers/ROUTER_NAME { "bgpPeers": [ BGP_PEERS ] }
请替换以下内容:
PROJECT_ID
:Cloud Router 路由器所属的项目REGION
:Cloud Router 路由器所在的区域ROUTER_NAME
:Cloud Router 路由器的名称BGP_PEERS
:新 BGP 对等体数组的内容
以下示例包含两个 BGP 对等体,并在
bgpPeers[].bfd
字段中设置值。如需详细了解这些选项,请参阅 BFD 设置和计时器。必需:如需启用 BFD,请将
sessionInitializationMode
设置为ACTIVE
。{ "name": "peer-1", "interfaceName": "if-peer-1", "ipAddress": "169.254.10.1", "peerIpAddress": "169.254.10.2", "peerAsn": 64512, "advertisedRoutePriority": 100, "advertiseMode": "DEFAULT" "bfd": { "sessionInitializationMode": ACTIVE, "minTransmitInterval": 1000, "minReceiveInterval": 1000, "multiplier": 5 } }, { "name": "peer-2", "interfaceName": "if-peer-2", "ipAddress": "169.254.20.1", "peerIpAddress": "169.254.20.2", "peerAsn": 64513, "advertisedRoutePriority": 99, "advertiseMode": "DEFAULT" "bfd": { "sessionInitializationMode": ACTIVE, "minTransmitInterval": 1000, "minReceiveInterval": 1000, "multiplier": 5 } }
在对等路由器上配置 BFD
如需在对等路由器上启用 BFD,请配置“最小传输时间间隔”“最小接收时间间隔”和“检测倍数”(推荐)。使用特定于设备的命令。
对于 BFD 对等体之间的 BFD 计时器协商,两个对等体中较慢的一个决定了传输速率。通过配置较高的值,您可以强制使这些间隔更长,而不是更短。
以下是 Cisco 路由器的 BFD 配置示例。如需查找其他配置示例,请参阅使用适用于 BFD 的第三方路由器配置。
int range <physical interface> bfd interval 1000 min_rx 1000 multiplier 5 router bgp <ASN> neighbor 169.254.33.6 fall-over bfd neighbor 169.254.44.6 fall-over bfd
验证对等路由器上的 BFD
配置对等路由器后,通过查看有关 BFD 会话的详细信息来验证与 Cloud Router 路由器的会话是否已启动并运行。
Cisco 路由器的以下示例命令显示 BFD 会话的状态:
show bfd neighbors 169.254.44.6 details
命令输出应如下所示:
IPv4 Sessions NeighAddr LD/RD RH/RS State Int 169.254.44.6 4212/2045617738 Up Up Tu503 Session state is UP and not using echo function. Session Host: Software OurAddr: 169.254.44.5 Handle: 4 Local Diag: 0, Demand mode: 0, Poll bit: 0 MinTxInt: 1000, MinRxInt: 1000, Multiplier: 5 Received MinRxInt: 1000, Received Multiplier: 5 Holddown (hits): 244(1), Hello (hits): 100(30409) Rx Count: 4562, Rx Interval (ms) min/max/avg: 10/1140/870 last: 56 ms ago Tx Count: 4475, Tx Interval (ms) min/max/avg: 10/1040/890 last: 64 ms ago Elapsed time watermarks: 4 4 (last: 4) Registered protocols: CEF BGP Uptime: 00:06:39 Last packet: Version: 1 - Diagnostic: 0 State bit: Up - Demand bit: 0 Poll bit: 0 - Final bit: 0 C bit: 0 Multiplier: 5 - Length: 24 My Discr.: 2045617738 - Your Discr.: 4212 Min tx interval: 1000 - Min rx interval: 1000 Min Echo interval: 0
Cisco ASR 对等路由器的此示例输出显示了诊断信息,您可以在对等端查看这些信息以确定 BFD 会话的状态:
14:06:12.906921 IP (tos 0xc0, ttl 255, id 58754, offset 0, flags [none], proto UDP (17), length 52) 169.254.44.5.49152 > 169.254.44.6.3784: [udp sum ok] BFDv1, length: 24 Control, State Down, Flags: [none], Diagnostic: No Diagnostic (0x00) Detection Timer Multiplier: 5 (5000 ms Detection time), BFD Length: 24 My Discriminator: 0x0000100b, Your Discriminator: 0x00000000 Desired min Tx Interval: 1000 ms Required min Rx Interval: 1000 ms Required min Echo Interval: 100 ms
在 Cloud Router 路由器上验证 BFD
使用以下方法之一验证 Google Cloud 端的 BFD 会话:
对于会话状态更改,请检查 Cloud Logging 中生成的日志,或查看
bfd/session_up
的 Cloud Monitoring 指标。如需了解 BFD 会话,请查看 Cloud Router 路由器状态。
后续步骤
如需在 BGP 会话上修改 BFD 设置,请参阅更新或停用 BFD。
如需 BFD 诊断消息、会话状态和状态消息方面的帮助,请参阅 BFD 诊断消息和会话状态。
要排查 Cloud Router 问题,请参阅问题排查。