四步缺一不可
用环回口建立 eBGP 是运营商对接的常规做法:物理接口故障或链路切换时,只要环回地址仍然可达,会话就不受影响。代价是配置步骤固定为四步,缺任何一步 TCP 都建不起来:两端配置环回地址、让到对端环回的路由双向可达、neighbor 指向对端环回并用 update-source 指定本端源地址、直连链路配 disable-connected-check(跨设备则配 ebgp-multihop)。两端都要配齐,单侧完整没有意义。
基本信息
| 第一步 | 两端配置环回接口地址,通常用 /32 |
|---|---|
| 第二步 | 保证到对端环回的路由双向可达(静态或 IGP) |
| 第三步 | neighbor 写对端环回地址 + update-source 指向本端环回 |
| 第四步 | 直连用 disable-connected-check,跨设备用 ebgp-multihop |
| 对称性 | 两端必须都配齐,单侧配全同样建不起来 |
| 附加保护 | 可配合 TTL 安全(GTSM)限制来源跳数 |
典型使用场景
- 跨设备 eBGP 邻居:链路或中间设备切换时会话不中断
- 运营商与客户对接:把邻居地址与物理接口解耦,降低割接影响
- 双物理链路同 AS:会话不必绑定在某一条物理链路上
- 设备替换:环回地址不变,对端配置无需跟着改
配置模板
配置模板
# R1(本端 AS 65001)
interface Loopback0
ip address 1.1.1.1 255.255.255.255
router bgp 65001
neighbor 9.9.9.9 remote-as 65002 # 邻居写对端环回地址
neighbor 9.9.9.9 update-source Loopback0 # 源地址用本端环回
neighbor 9.9.9.9 ebgp-multihop 2 # 按实际跳数放宽 TTL
ip route 9.9.9.9 255.255.255.255 10.0.0.2 # 保证对端环回有可达路径
# R2 侧按同样四步对称配置缺失项与典型现象
| 缺失项 | 典型现象 | 排查入口 |
|---|---|---|
| 到对端环回没有路由 | 会话停在 Active 或 Connect | show ip route 9.9.9.9 |
| 未配 update-source | 源地址不是环回,对端按地址校验失败 | show ip bgp neighbors 看本地地址 |
| 跨设备未开 multihop | 报文 TTL 过期,会话建不起来 | 抓包看 BGP 报文 TTL |
| 直连未配 connected-check 豁免 | 连通性检查直接挡住连接 | 逐行比对邻居配置 |
| 单侧配齐另一侧没配 | 两端状态不一致,日志只在一侧出现 | 两端配置逐项对照 |
配置完成后先做双向可达性验证:从两端分别 ping 对端环回并确认源地址正确,再谈 BGP 参数。TCP 不通时讨论 BGP 定时器、策略与属性没有任何意义。
跳数不要按当前最短路径写死:路径变化会引入额外跳数,余量不足会导致会话在链路切换后才暴露故障。稳妥做法是给出与设计一致的跳数上限,并配合 TTL 安全策略约束来源。