同步规则是什么
BGP 同步(synchronization)是一条历史规则:iBGP 学到的路由必须在 IGP 中同样可见,才允许装入路由表并对外通告。它针对的是「AS 内其他路由器还没学到这条路由,本机就先按它转发」造成的流量黑洞。现代 IOS 默认关闭(no synchronization),因为完整的 IGP 覆盖加上 RR 或全互联拓扑已经能保证内部一致;但部分老设备上它可能仍是开启状态,排查老网络时必须先确认这个开关。
基本信息
| 规则内容 | iBGP 路由需在 IGP 中可见才可用、才可对外通告 |
|---|---|
| 设计目的 | 防止 AS 内未贯通时产生流量黑洞 |
| 现代默认 | 关闭(no synchronization) |
| 老设备差异 | 早期 IOS 默认开启,升级或替换后默认行为会变 |
| 替代机制 | 完整的 IGP 覆盖 + RR/全互联拓扑设计 |
| 核对命令 | show running-config | include synchronization |
典型使用场景
- 排查老网络:路由学到了却不装表、不通告,先确认同步是否开启
- 配置迁移与设备替换:逐项核对默认值差异,避免行为静默变化
- 割接前一致性检查:确认 AS 内 IGP 是否真的全覆盖,而不是依赖同步兜底
- 历史故障复盘:分析流量黑洞成因时,同步是一个高频解释项
- 培训与交接:解释「为什么路由在 BGP 表里却用不了」这类现象
核对与处置
核对与处置
show running-config | include synchronization # 确认同步开关状态
show ip bgp 10.1.0.0 # 看是否被标记为 not synchronized
show ip route 10.1.0.0 # 确认 IGP 里是否有同前缀
show ip bgp summary # 对比 BGP 表与路由表的数量差
# 现代设计下通常直接关闭
no synchronization同步开关下的行为差
| 场景 | 同步开启 | 同步关闭 |
|---|---|---|
| iBGP 路由在 IGP 中也可达 | 正常装入路由表 | 正常装入路由表 |
| iBGP 路由不在 IGP 中 | 留在 BGP 表但不可用,标记 not synchronized | 直接可用并继续通告 |
| 对外通告 | 未同步的路由不向 eBGP 邻居通告 | 按策略正常通告 |
| 典型现象 | 学到路由数量远多于可用路由数量 | BGP 表与路由表基本一致 |
同步属于「隐藏开关」式的问题源:show ip bgp summary 一切正常,业务却不通,因为路由卡在 not synchronized 状态。排查老网络时把 synchronization 与 auto-summary 一起列为默认值必查项。