号主:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部
BGP 是互联网骨干和大规模企业网络必用的外部路由协议。

它不像 OSPF、EIGRP 那样局限在内部网络,邻居建立失败会直接导致跨网段甚至跨运营商网络不可达。
很多新手排障第一反应是看 IP、ASN 或者接口状态,其实真正的隐形敌人往往是防火墙。
只要 TCP 179 端口被阻止,BGP 邻居就无法建立,表面上看起来配置都对,但就是握手失败。
今天深入讲解 BGP 邻居建立失败的原因、排障思路,以及防火墙相关的注意点。
1. BGP 邻居建立流程回顾
BGP 使用 TCP 179 建立会话,主要步骤:
三次握手建立 TCP 连接
- 邻居双方 TCP 三次握手完成,才能进入 BGP FSM(Finite State Machine)状态。
BGP Open 消息交换
- 交换 ASN、Hold Time、能力(Capability)信息。
Keepalive 消息维持会话
- 定期发送 Keepalive 消息保持邻居状态。
Update 消息传递路由信息
如果某一步失败,邻居状态就不会变成 Established。常见状态有:
- Idle:初始状态,等待启动
- Connect:尝试建立 TCP
- Active:TCP 建立失败,继续尝试
- OpenSent / OpenConfirm:TCP 成功,Open 消息交换中
- Established:邻居成功建立,可以收发路由
2. 防火墙对 BGP 邻居的影响
2.1 TCP 端口阻断
BGP 使用 TCP 179
如果防火墙策略未允许 TCP 179,BGP 无法建立连接
表现:
- Active 状态徘徊不前
- Ping 通对端 IP,但 BGP 握手失败
2.2 ACL 或策略路由
- 防火墙可能对源 IP、目的 IP 或接口做策略限制
- 可能只允许特定 IP 建邻居
- 造成部分邻居无法建立,另一部分邻居正常
2.3 NAT 影响
- 在 NAT 环境下,如果没有静态 NAT 映射 BGP 源端口或地址,BGP 握手也可能失败
2.4 日志观察
防火墙日志可以查看 TCP 179 被阻止的情况
网工常用命令:
display firewall session
display firewall policy
3. 排障思路
当 BGP 邻居建不起来时,可以按以下顺序排查:
确认接口可达
- Ping 对端 IP 是否通
- traceroute 检查路由路径是否中断
确认 TCP 179 是否通
- 使用 telnet <BGP_neighbor_IP> 179 或 nc -zv <IP> 179
- 如果 TCP 握手失败,说明防火墙或 ACL 阻止
检查 BGP 配置
- ASN 是否正确
- 邻居 IP 是否正确
- 对端 BGP 是否启用
分析防火墙策略
- 确认防火墙允许 TCP 179 双向通过
- 检查策略是否限制源/目的 IP 或接口
- 在多层防火墙环境下,确保每一跳的策略都放行 BGP 会话
查看 TCP 状态
在路由器上:
display tcp brief检查是否有 TCP SYN 发送但未收到 ACK
SYN 发出但无 ACK,一般说明中间设备(防火墙、ACL)阻断
确认 NAT 或策略路由
- BGP 建邻居时,源 IP 和端口必须保持一致
- NAT 或策略路由可能修改源 IP,导致 TCP 握手失败
日志分析
- 路由器日志查看 BGP FSM 状态变化
- 防火墙日志查看是否有 TCP 179 被拒绝的记录
4. 防火墙配置注意点
允许 TCP 179 双向
- 内外网或者不同区域都必须放行
保持源 IP 一致
- 如果使用 NAT,需要静态 NAT 映射 BGP 对端 IP
考虑高可用与备份链路
- 多条链路时,每条链路都要放行 BGP 会话
避免策略过细导致误杀
- 仅放行特定端口和源 IP,避免放行过多,同时保证邻居可达
5. 建立稳定 BGP 邻居的建议
端口固定
- TCP 179 默认即可,不建议修改
双向检查
- 对端路由器和防火墙都要确认策略
定期监控
- 使用 SNMP 或监控工具监控 BGP 会话状态
模拟断链实验
- 提前测试防火墙策略,确保链路切换不会影响邻居
文档化配置
- 所有 BGP 邻居、ASN、防火墙策略要有详细文档,方便排障
6. 总结
BGP 邻居建立失败最常见的隐形原因就是 防火墙阻断 TCP 179
Ping 可通 ≠ BGP 成功,必须确认 TCP 三次握手是否完成
排障顺序:接口可达 → TCP 179 测试 → 配置检查 → 防火墙/ACL → 日志分析
稳定邻居建立依赖正确配置、防火墙放行、NAT 注意以及定期监控
一句话总结:BGP 是 TCP 会话,TCP 不通就别谈邻居建立。
原创:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部

被折叠的 条评论
为什么被折叠?



