路由来源标记速读
`show ip route` 最左侧的字母告诉你这条路由是怎么来的:C 直连、L 本地地址、S 静态、O OSPF、B BGP 等。BGP 表里还有另一套标记体系:状态列用 * 表示有效、> 表示最优、i 表示从 IBGP 学来、e 表示从 EBGP 学来,而 Origin 列里的 i/e/? 表示 ORIGIN 属性——两处同名不同义,混读是常见误判来源。
基本信息
| 适用平台 | Cisco IOS/IOS-XE 的 show ip route 与 show ip bgp |
|---|---|
| 路由表代码 | C 直连、L 本地、S 静态、O OSPF、O IA 区域间、O E1/E2 外部、B BGP |
| BGP 状态列 | * 有效、> 最优、i 来自 IBGP、e 来自 EBGP、s 抑制、d 抖动抑制、h 历史、S 陈旧 |
| Origin 列 | i 通过 IGP 引入、e 通过 EGP、? 来源不完整(incomplete) |
| 星号含义 | 路由表图例中 * 与候选默认路由相关,各平台用法不完全一致,以本机图例为准 |
典型使用场景
- 快速判断某前缀是否经 BGP 学到:先看代码再决定查哪张表
- 确认最优路径:只有带 > 的条目才会被下发给转发表
- 区分 IBGP 与 EBGP 来源:状态列的 i/e 决定后续查哪类邻居
- 核对 ORIGIN 属性:排查选路差异时,Origin 列才是比较依据
- 新人培训与交接:用一张对照表把两套标记体系讲清楚
查看与对照
查看与对照
# 路由表:看代码与来源
show ip route | include B
show ip route 10.1.0.0/16
# BGP 表:状态列与 Origin 列要分开读
show ip bgp 10.1.1.0/24
# 只看最优路径
show ip bgp | include '^\*>'
# 华为 VRP 对应命令(标记体系不同)
display ip routing-table 10.1.0.0常见标记对照
| 标记 | 位置 | 含义 |
|---|---|---|
| C / L | 路由表 | 直连网络 / 设备本地地址 |
| S | 路由表 | 静态路由 |
| O / O IA / O E2 | 路由表 | OSPF 区域内 / 区域间 / 外部 |
| B | 路由表 | BGP 学到的路由 |
| * / > | BGP 表状态列 | 有效 / 最优,优先看带 > 的条目 |
| i / e | BGP 表状态列 | 来自 IBGP / 来自 EBGP |
| i / e / ? | BGP 表 Origin 列 | ORIGIN 属性:IGP / EGP / 不完整 |
排查路径问题时先分清「谁提供的路由」,再谈选路与策略:来源搞错,后面的比较步骤都会建立在错误前提上。
看具体前缀时把路由表与 BGP 表对照:路由表回答「从哪来、下一跳是谁」,BGP 表回答「是否有效、是否被优选、属性如何」。两张表的信息互补,缺一张就容易得出片面结论。