首页/网络/BGP 与广域网速查/disable-connected-check 使用注意
BGP 基础与邻居89 条

disable-connected-check 使用注意

环回口建 EBGP 时若跳数实为 1,可用 disable-connected-check 免配 multihop,但语义与 multihop 不同,混用易出错。

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

它关掉的是哪道检查

两台设备直连、却用 Loopback 建立 eBGP 时,会撞上两套限制:一是 eBGP 要求邻居地址必须落在直连网段内(连通性检查),二是 eBGP 报文的 TTL 默认只有 1,跨设备就会过期被丢。disable-connected-check 关掉的是前者——只跳过直连性检查,TTL 仍然是 1,所以它只适用于「物理直连但用环回地址做邻居」的场景;跨设备要放宽的是 TTL,那是 ebgp-multihop 的职责。两者语义不同,混配会让人难以推理实际行为。

基本信息

检查对象邻居地址是否落在直连网段内
命令效果跳过直连性检查,TTL 保持默认 1
适用场景两台设备直连、用环回口建立 eBGP
对比 ebgp-multihopmultihop 放宽的是 TTL 限制,与连通性检查不是同一件事
组合建议按「对端地址是否直连」二选一,通常不需要同时配
配置位置neighbor 视图,按邻居单独生效

典型使用场景

  • 直连两台设备用环回建 eBGP:只需关掉连通性检查,配置最省
  • 跨设备环回对等:要的是 ebgp-multihop,而不是连通性检查豁免
  • 排查邻居卡在 Active:区分是被直连性检查挡住还是 TTL 过期导致
  • 配置审计:确认现网没有把两个开关混配在同一个邻居上

配置与核对

配置与核对
router bgp 65001
 neighbor 10.0.0.9 remote-as 65002             # 邻居写对端环回地址
 neighbor 10.0.0.9 update-source Loopback0     # 源地址用本端环回
 neighbor 10.0.0.9 disable-connected-check     # 仅跳过直连性检查,TTL 仍为 1
!
show ip bgp neighbors 10.0.0.9                # 看连接状态与跳数相关提示
show ip bgp summary                           # 确认会话是否建立

两个开关的区别

维度disable-connected-checkebgp-multihop
放宽的检查邻居地址必须直连网段报文 TTL 必须足够
TTL 行为保持默认 1按配置放宽,未指定时按厂商默认取较大值
适用拓扑物理直连 + 环回对等跨设备、跨多跳的环回对等
典型误用跨设备时用它,报文仍被 TTL 丢弃直连时配大跳数,掩盖配置意图
选择依据对端地址是否直连跨多跳场景优先选它
判断顺序很简单:先看对端地址是否直连——直连选 disable-connected-check,跨设备选 ebgp-multihop,然后回头检查配置里有没有另一个多余的开关留在原处。混配不会立刻报错,但会让后续排查失去确定性。
TTL 安全(GTSM)是另一层保护:把 eBGP 的 TTL 固定为 255 并校验来源跳数,跨跳场景需要与 multihop 配合使用。相关命令与默认值各厂商不同,配置前以对应版本手册为准。

易错点

  • 跨设备错用 disable-connected-check:连通性检查过了但 TTL 仍为 1,报文在中间被丢弃,会话建不起来且现象容易被误判成链路问题
  • 两个开关同时配:行为叠加、难以推理,后续改拓扑时没人说得清哪个在真正起作用
  • 直连场景配大跳数 multihop:能通但配置意图模糊,审计时容易误删真正需要的配置
  • 放宽检查后不核对来源可信性:把这两个开关当万能钥匙,等于放弃了 eBGP 天生具备的一层来源约束

数据来源与参考

  • Cisco: 环回口 EBGP 场景说明
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌