首页/网络/BGP 与广域网速查/ORIGIN 属性:i / e / ? 的含义
BGP 选路与策略62 条

ORIGIN 属性:i / e / ? 的含义

ORIGIN 是必遵属性:network 命令产生的路由为 IGP(i),重分发进来的为 INCOMPLETE(?);比较顺序为 IGP 优于 EGP,EGP 优于 INCOMPLETE。

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

ORIGIN 是什么

ORIGIN 是必遵属性,记录路由是怎么进入 BGP 的:用 network 命令宣告的标记为 IGP(i),通过重分发引入的标记为 INCOMPLETE(?),EGP(e)是历史遗留取值,现代网络基本见不到。它在决策顺序中排第 5 位,只有在前面几项属性完全相同时才起作用。

基本信息

属性类型well-known mandatory(必遵)
取值i = IGP;e = EGP;? = INCOMPLETE
产生方式network 命令产生 i;redistribute 产生 ?
比较顺序i 优于 e,e 优于 ?(第 5 步)
显示位置show ip bgp <前缀> 路径行末尾的字母
是否影响可达性不影响,只影响属性比较中的优先级

典型使用场景

  • 确认某条路由的来源:判断它是宣告的还是重分发引入的
  • 排查选路差异:属性接近时,ORIGIN 可能成为分出胜负的那一步
  • 割接核对:迁移后确认引入方式是否与设计一致
  • 审计与巡检:抽查外部路由是否全部来自预期方式
  • 与聚合配合:理解聚合条目的 ORIGIN 与原明细的关系

查看与设置

查看与设置
show ip bgp 10.1.1.0/24
# 路径行末尾字母即 ORIGIN:i / e / ?
show ip bgp neighbors 10.0.0.2 advertised-routes | include 10.1
#
# 通过 route-map 显式设置(较少使用,主要用于与对端约定)
route-map RM-ORIGIN permit 10
 set origin igp
!
show ip bgp 10.1.1.0/24 | include origin

取值与来源对照

取值含义常见来源优先级
iIGP,本 AS 内部产生network 命令宣告最高
eEGP,历史协议产生早期 EGP 环境居中
?INCOMPLETE,来源不明redistribute 或聚合引入最低
同一前缀多条路径走到第 5 步才比较 ORIGIN,实际网络中该步骤极少成为决定因素;看到 ? 也不必紧张,重分发场景普遍存在。
聚合路由的 ORIGIN 通常为 incomplete,因为它是本地生成的汇总条目,与它所覆盖的明细来源无关。

核对来源方式

核对来源方式
show ip bgp 10.1.1.0/24                       # 路径行末尾字母为 ORIGIN
show ip bgp neighbors 10.0.0.2 advertised-routes | include 10.1
# 与设计对照:宣告的路由应为 i,重分发引入的为 ?
show running-config | include redistribute    # 确认引入方式来源

排障中的典型判断

现象判断动作
外部前缀显示 ?来源为重分发或聚合与设计对照,确认是预期来源
同样前缀远近两条路径 ORIGIN 不同可能在此步分出胜负核对前面几步属性是否真的完全相同
聚合条目显示 ? 而非 i聚合由本地生成属正常表现,无需修改
迁移后 ORIGIN 变化引入方式改变确认是否已切换为 network 宣告

易错点

  • 把 origin ? 当成异常:重分发场景普遍存在,只影响比较优先级不影响可达性
  • 忽略聚合对明细的影响:看不懂聚合条目的来源时,对照明细路由查看 ORIGIN
  • 靠 set origin 强行改变选路:该属性影响面小且容易被对端重置,优先考虑 LOCAL_PREF 等手段
  • 只看本机 ORIGIN 不核对对端:属性在传递过程中可能被上游重置,需两边对照

数据来源与参考

  • RFC 4271: ORIGIN 属性
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌