首页/网络/BGP 与广域网速查/BFD 会话起不来的排查
广域网排障60 条

BFD 会话起不来的排查

BFD 不起常见四因:两端参数协商失衡、UDP 3784/4784 被过滤、单跳与多跳配置错配、模式不兼容;按会话状态与抓包定位。

BGP 与广域网速查网络更新于 2026-10-13

会话起不来先看四件事

BFD 会话建立失败的原因集中在四类:两端参数差距过大导致协商无法收敛、中间设备或安全策略过滤了 BFD 使用的 UDP 端口、单跳与多跳会话类型配置错配、以及两端实现模式不兼容。排查顺序建议从底层开始:先确认两端地址本身可达,再看会话状态字段处于哪个阶段,然后抓包确认探测报文是否双向互通。状态字段很有信息量——处于管理关闭说明本端被禁用,处于初始化说明收到过对端报文但本端尚未确认,长期停留在下行则通常意味着报文根本没有到达对端。

基本信息

参数类原因收发间隔与检测倍数差异过大,协商不收敛
过滤类原因中间设备或防火墙拦截 BFD 使用的 UDP 端口
类型错配单跳与多跳会话类型与实际拓扑不符
模式差异两端实现支持的 BFD 模式不同
排查手段会话状态查询配合抓包确认双向互通

典型使用场景

  • 新建立会话不生效:按参数、端口、类型、模式逐项核对
  • 链路改造后失效:确认中间是否新增了过滤或代理设备
  • 跨防火墙部署:确认 BFD 端口是否被策略放行
  • 两端设备异构:不同厂商实现的兼容性验证
  • 会话频繁抖动:判断是链路问题还是检测参数过于激进

排查命令

排查命令
# 查看会话状态、协商参数与向上层通知情况
show bfd neighbors details
# 抓包确认探测报文是否双向互通
tcpdump -ni eth0 udp port 3784
# 华为
display bfd session all verbose
# 先确认最基础的连通性,再谈 BFD
ping -c 5 203.0.113.2

状态与含义

状态含义常见原因
AdminDown本端管理性关闭会话未启用或被禁用
Down尚未建立或已失效报文不可达或参数严重不匹配
Init已收到对端报文但未确认单向可达或两端模式不一致
Up会话正常此状态下问题通常在联动侧
把检测间隔压得过低会放大链路微抖的影响,出现频繁误判;多数场景用百毫秒级别即可获得明显优于协议超时的感知速度。
跨防火墙或负载设备部署 BFD 时,探测报文与数据流量可能走不同路径,导致会话状态与实际转发能力不一致。

易错点

  • 跳过底层连通性直接查 BFD:基础可达性不成立时,后续所有分析都是无用功
  • 把参数配置得很激进:链路微抖就判定失效,造成不必要的切换
  • 多跳场景按单跳参数配置:报文封装与端口不匹配,会话无法建立
  • 忽略中间设备的过滤策略:探测报文被拦但日志不显眼,排查方向容易跑偏

数据来源与参考

  • RFC 5880: BFD 状态机
  • Cisco: BFD 排错
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌