首页/网络/BGP 与广域网速查/Cluster ID 与反射防环
BGP 基础与邻居89 条

Cluster ID 与反射防环

Cluster ID 标识反射器集群(默认取 router-id):多 RR 冗余时同一集群用相同 cluster-id,反射路径经 cluster-list 判环。

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

Cluster ID 与环路检测

路由反射器(RR)把从客户端学到的路由反射给其它客户端,为避免反射路径在集群内打转,RFC 4456 引入两个属性:ORIGINATOR_ID 记录最初通告者的 Router ID,CLUSTER_LIST 记录反射过程经过的集群 ID。反射器在发出路由时把自己的 cluster-id 追加进 CLUSTER_LIST,接收时若发现列表中已存在该值就丢弃该路由。

基本信息

默认取值未配置时 cluster-id 取本机 Router ID
配置命令router bgp 下 bgp cluster-id <值>
推荐做法同一集群内的多台 RR 显式配置相同的 cluster-id
查看位置show ip bgp <前缀> 输出中的 Cluster list 与 Originator 行
适用协议RFC 4456 路由反射
与 Router ID 区别cluster-id 标识集群,Router ID 标识设备,两者角色不同

典型使用场景

  • 双 RR 冗余组网:两台 RR 属于同一集群时必须共用 cluster-id
  • 排障路由被丢弃:核对 CLUSTER_LIST 中是否出现本集群 ID
  • 迁移 RR:新增 RR 加入现有集群前先统一集群标识
  • 多集群设计:按区域划分集群并用不同 ID,便于分析反射路径
  • 核查反射效果:确认客户端收到了正确的 Originator 与 Cluster list

配置与查看

配置与查看
router bgp 65001
 bgp cluster-id 10.99.0.1
!
# 在两台 RR 上配置相同的 cluster-id
!
show ip bgp 10.100.0.0/16
# 关注输出:
#   Originator: 2.2.2.2   (最初通告者的 Router ID)
#   Cluster list: 10.99.0.1
# 回路丢弃的条件:收到的路由里已包含本集群 cluster-id

两个防环属性对照

属性写入者判据
ORIGINATOR_ID第一个反射该路由的 RR值等于本机 Router ID 时不再接收
CLUSTER_LIST每台反射器追加自身 cluster-id列表中出现本集群 ID 即丢弃
LOCAL_PREF不发生反射写入反射器不修改该属性,客户端间保持一致

常见问题核对

常见问题核对
# 确认两台 RR 的 cluster-id 是否一致
show running-config | include cluster-id
# 查看客户端是否收到带 Originator 的路由
show ip bgp 10.100.0.0/16
# 检查客户端之间是否正常互通
show ip bgp summary
# 关注双 RR 场景下同一前缀的路径数量是否为两条
同一集群内多台 RR 使用不同 cluster-id 时,反射路径的环路判定会失效:路由可能在集群内多处反射,形成不可预期的路径。双 RR 场景请在规划阶段就统一集群标识。

易错点

  • 同一集群的多台 RR 使用不同 cluster-id:CLUSTER_LIST 判环失效,路径可能在集群内反复反射
  • 把 cluster-id 与 Router ID 混为一谈:两者作用不同,修改其中之一前需评估对选路与判环的影响
  • RR 之间 Router ID 重复:Originator 比较失去意义,选路与环路检测同时受影响
  • 变更 cluster-id 后不做软刷新:已有路由仍带旧值,判环结果与配置不符
  • 只在单台 RR 上修改配置:双 RR 场景下两台行为不一致,问题呈现为间歇性路径异常

数据来源与参考

  • RFC 4456: Cluster ID 与环路检测
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌