BGP 是什么
BGP(Border Gateway Protocol)是运行在自治系统之间传递路由信息的域间路由协议,当前普遍使用第 4 版。它靠 AS_PATH 记录一条路由经过的 AS 序列来防环,靠属性组合与策略决定选路,而不像 IGP 那样只比较一个度量值,因此互联网与多运营商互联都以它为事实标准。
基本信息
| 协议类型 | 路径向量(Path Vector) |
|---|---|
| 传输层 | TCP 179 |
| 作用域 | AS 之间为 EBGP,AS 之内为 IBGP |
| 选路依据 | 属性组合与策略,而非单一度量 |
| 版本 | BGP-4(RFC 4271) |
| 常见实现 | Cisco IOS、华为 VRP、FRR、BIRD 等 |
典型使用场景
- 企业与多运营商互联,按策略选择出口并做故障切换
- 数据中心多出口与多归属,跨运营商实现入向流量引导
- 大型园区或骨干内部用 IBGP 传递外部路由,替代部分 IGP 角色
- 数据中心互联(DCI)中以 MP-BGP 承载 VPN 或 EVPN 地址族
- 互联网路由安全实践:前缀过滤、RPKI 校验、社区标记
最小可用配置
最小可用配置
router bgp 65001 # 本机 AS 号
bgp router-id 10.0.0.1 # 指定稳定的身份标识
neighbor 10.0.0.2 remote-as 65002 # 邻居地址与对端 AS 号
!
show ip bgp summary # 查看邻居状态与收到前缀数
show ip bgp # 查看本机 BGP 表
show ip route bgp # 查看已进入主表的 BGP 路由与 IGP 的定位差别
| 对比项 | BGP | OSPF / IS-IS 等 IGP |
|---|---|---|
| 设计目标 | AS 间可扩展的路由交换 | AS 内快速收敛的拓扑计算 |
| 选路依据 | 属性与策略组合 | 单一度量 |
| 收敛速度 | 慢,依赖定时器与策略 | 快,秒级或毫秒级 |
| 规模 | 可承载数十万条前缀 | 通常承载内部网段 |
| 使用建议 | AS 间互联、多出口策略 | 内部可达性、下一跳可达 |
BGP 不发现拓扑:它只交换可达前缀与路径属性,底层可达性由直连路由或 IGP 保证。邻居建不起来时,先确认两端是否互相可达。
把 BGP 当 IGP 用会带来收敛慢与策略维护成本:AS 内的互访应交给 OSPF 或 IS-IS,BGP 只负责域间与策略性选路。
排障顺序建议:先看会话是否 Established,再看前缀收发数量,最后看选路结果与策略。跳步直接查选路,往往在会话或策略层面就已经断了。