验证选路的命令组合
验证选路要按层次来:先看候选路径有哪些,再看主表装载了什么,然后看本端对外发布了什么,最后核对原始输入。这个顺序对应的是一台设备内部的处理链条,按链条逐层核对,能快速把问题锁定到某一层,而不是在多个猜测之间反复试。
基本信息
| 候选路径 | show ip bgp <前缀> |
|---|---|
| 装载结果 | show ip route <前缀> 与 show ip bgp rib-failure |
| 对外发布 | show ip bgp neighbors <ip> advertised-routes |
| 原始输入 | received-routes(需 soft-reconfiguration inbound) |
| 邻居状态 | show ip bgp summary 与 neighbors <ip> |
| 适用设备 | Cisco IOS 命令体系;华为对应 display bgp routing-table |
典型使用场景
- 变更后验收:确认前缀、属性与发布集合与设计一致
- 故障排查:逐层确认问题出在接收、选路还是发布
- 多设备一致性核对:对比不同设备对同前缀的结论
- 出向策略验证:advertised-routes 是发布结果的直接证据
- 排查「有路由但不通」:结合下一跳与主表装载结果
组合命令
组合命令
show ip bgp summary # 0. 先确认会话与前缀数
show ip bgp 10.1.1.0/24 # 1. 候选路径与最优标记
show ip route 10.1.1.0/24 # 2. 主表装载结果与下一跳
show ip bgp rib-failure # 3. 有 BGP 表项但未装载的原因
show ip bgp neighbors 10.0.0.2 advertised-routes # 4. 对外发布集合
show ip bgp neighbors 10.0.0.2 received-routes # 5. 原始输入(需软重置支持)每层要确认什么
| 层次 | 确认内容 | 异常时的方向 |
|---|---|---|
| 会话层 | 邻居是否 Established、前缀数是否合理 | 查参数与策略 |
| 候选层 | 是否有预期数量的候选路径 | 查对端发布与入向过滤 |
| 决策层 | 最优路径是否符合设计 | 按决策顺序逐项比对属性 |
| 装载层 | 是否进入主表、下一跳是否可达 | 查 rib-failure 与 IGP 可达性 |
| 发布层 | 对端能看到的前缀与属性 | 查出向策略与汇总配置 |
advertised-routes 反映策略处理后的发布结果,是核对出向策略最直接的依据;而 received-routes 需要先开启软重置能力才可用。
验证顺序不要颠倒:先看会话与接收,再看选路与发布,跳过前两步直接调属性是最常见的返工原因。
同一前缀多台设备结论不一致时,用同一组命令逐台采集输出再比对,比在设备之间来回切换判断更快找到分歧点。