为什么需要看收发明细
当现象是「某个前缀明明对端有、本端却没有」或者「本端配了但对方收不到」时,配置挨个对比往往得不出结论,需要直接观察 UPDATE 报文层面的收发明细:某条前缀是否在报文中出现、携带了哪些属性、在入方向策略或选路环节被丢弃的原因。设备提供的 update 级调试能给出这类信息,但它输出的数据量随路由表规模放大,必须先用条件把范围限定到单个邻居或单条前缀,否则调试本身就会拖慢设备。在做任何调试前,先确认能否用更温和的手段替代。
基本信息
| Cisco 命令 | debug ip bgp updates,可按邻居或按 ACL 限定范围 |
|---|---|
| 华为命令 | debugging bgp update,可按 peer 限定 |
| 过滤手段 | 限定邻居地址或前缀列表,避免全量输出 |
| 温和替代 | 请求对端重新通告,或旁路抓取 179 端口流量分析 |
| 收尾动作 | 调试结束立即关闭,避免长期占用资源 |
典型使用场景
- 前缀缺失:确认对端到底有没有通告这条路由
- 属性核对:查看收到的属性值是否与预期一致
- 策略生效验证:确认某条前缀是在入方向就被过滤
- 互通排查:对照两端看到的属性差异定位协商问题
- 确认通告范围:验证出方向策略是否按设计放行
示例
示例
# Cisco:先用条件把范围收窄,再开调试
debug ip bgp updates access-list PREFIX-FILTER
debug ip bgp updates neighbor 203.0.113.2
# 完成后立即关闭
undebug all
# 华为
debugging bgp update peer 203.0.113.2
# 观察期间建议用终端日志或日志服务器留存输出输出线索与判断
| 线索 | 含义 | 下一步 |
|---|---|---|
| 报文里没有该前缀 | 对端未通告或出方向被过滤 | 查对端出方向策略与通告条件 |
| 报文里有但本端无 | 入方向策略或选路丢弃 | 检查入方向过滤与下一跳可达性 |
| 属性与预期不符 | 对端设置了额外策略 | 核对对端出方向的属性修改 |
| 大量撤消与新增反复 | 路径抖动或对端不稳定 | 结合会话稳定性与链路状态判断 |
调试输出的属性值会随平台版本略有差异,判断前先确认本设备版本的输出格式,避免把格式差异当作配置错误。
未加过滤就开启更新调试,全表更新期间的输出量足以让日志系统与控制平面同时过载,务必先限定范围。