首页/网络/BGP 与广域网速查/Weight:本地权重(不传递)
BGP 选路与策略62 条

Weight:本地权重(不传递)

Weight 是 Cisco 实现中的本地属性,排在决策顺序首位:数值大者胜;它不出本机、不随 BGP 更新传递,适合单机临时干预出口。

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

Weight 是什么

Weight 是 Cisco 实现中的本地权重属性,排在 BGP 决策顺序第 1 位,数值大者胜,取值范围 0~65535。它只在本机生效,不写入 BGP 更新、不传给任何邻居,因此适合在单台设备上临时干预出口选择,不适合作为跨设备协同的长期策略。

本地属性的代价

正因为 weight 不出本机,它既不会污染对端也不会被对端覆盖,代价是每台设备都要单独配置。多出口场景下如果只给一台设备设了 weight,其他设备仍按自己的规则选择出口,表现为同一目标从不同设备发起时走不同路径;这类现象容易被误判为运营商侧问题。

基本信息

属性性质厂商本地属性(不出本机)
取值范围0 ~ 65535
默认值接收路由为 0;本地起源(network/redistribute)为 32768
决策位置第 1 位,先于 LOCAL_PREF 比较
适用平台Cisco IOS / IOS-XE(其他厂商无同名属性)
查看方式show ip bgp <前缀> 输出中的 Weight 列

典型使用场景

  • 单机排障:临时把某条路径抬高,验证流量是否按预期切换
  • 双线接入但只想让本机走某条线路,不牵动整网策略
  • 按前缀精细干预:重要业务走低延迟链路,其余走下成本链路
  • 接入设备只连单机 BGP 时,快速改变某邻居的优先级
  • 变更演练时验证路径被压制后业务是否走备份

配置与验证

配置与验证
router bgp 65001
 neighbor 10.0.0.2 weight 200          # 对该邻居收到的全部路由统一设权重
!
show ip bgp 10.1.1.0/24                # 查看 Weight 列确认生效
show ip bgp neighbors 10.0.0.2         # 核对邻居级 weight 参数
show ip route 10.1.1.0/24              # 确认选路结果与预期一致

按前缀设置

按前缀设置
ip prefix-list PFX-CRITICAL permit 10.10.10.0/24
route-map RM-WEIGHT permit 10
 match ip address prefix-list PFX-CRITICAL   # 只匹配关键业务前缀
 set weight 300                              # 命中后设为本值
route-map RM-WEIGHT permit 999               # 兜底条目,避免其余路由被隐式拒绝
!
router bgp 65001
 neighbor 10.0.0.2 route-map RM-WEIGHT in

权重取值参考

来源默认权重备注
eBGP 邻居学到的路由0未做任何设置时的基线
iBGP 邻居学到的路由0同样为 0,不代表优先级高
本机 network 宣告32768本地起源,天然压制外部同学
本机 redistribute 引入32768与 network 同源同值

两种配置方式的取舍

方式粒度适用时机注意点
neighbor weight整个邻居的所有路由快速验证出口是否会被改变影响面大,容易改变非目标流量的走向
route-map set weight按前缀精确匹配生产环境中控制个别业务需保留兜底 permit,否则未命中前缀被丢弃
两者同时存在以 route-map 为准过渡期保留邻居级基线两处数值并存时排查难度上升
本地起源路由默认 32768,意味着本机产生的同前缀路由在 weight 这一步永远压过从邻居学到的路由,这一默认行为常被误认为选路异常。
weight 适合排障期临时改选路;需要全 AS 一致的长期策略用 LOCAL_PREF,需要建议对端入口用 MED。
本机产生的同前缀路由默认 weight 32768:如果业务网段既在本机宣告又从邻居学到,本机宣告会一直胜出,需要先确认这种压制是否符合设计意图。
核对是否生效看 show ip bgp <前缀> 的 Weight 列:显示 0 表示设置没落到这条路由上,常见原因是 route-map 未挂到该邻居或 match 条件没命中。华为设备没有 weight 属性,对应的是 peer 的 preferred-value,作用域同样是本机。

易错点

  • 把 weight 当社区发给对端:它不出本机,跨设备协同必须用 LOCAL_PREF
  • 迁移到非 Cisco 设备后策略失效:平台没有同名属性,需按对端机制改写为 preference 或 distance
  • route-map 应用到 out 方向:出向设置 weight 对本机选路无意义,入向才影响本机决策
  • 忘记 route-map 隐式拒绝:只写精确条目不加兜底 permit 时,未命中的前缀会被丢弃
  • 同前缀同时配邻居级 weight 与 route-map:命中 route-map 的路由以其值为准,两处数值混用会造成判断困难
  • 只在单台设备设置:多出口环境下其他设备选路不变,同一目标出现路径不一致
  • 对齐基线时忽略本地起源值:本机宣告默认为 32768,若要让它被邻居路由压过,必须先显式调低而不能只改邻居权重

数据来源与参考

  • Cisco: BGP Weight 属性说明
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌