BGP 简介:互联网路由
High Contrast
Dark Mode
Light Mode
Sepia
Forest
1 min read285 words

BGP 简介:互联网路由

BGP(Border Gateway Protocol)是互联网的"路由协议之王"——全球所有 ISP 和大型企业通过 BGP 交换路由信息,构成了互联网的路由基础设施。本节以"够用"为目标:理解 BGP 的角色、AS 号、基本工作原理,能看懂 BGP 路由表。


BGP 的位置

企业内网                         互联网
┌────────────────────┐         ┌────────────────────────────┐
│  OSPF / EIGRP      │         │  AS 4134 (中国电信)         │
│  内部路由协议(IGP)  │──eBGP──│  AS 4837 (中国联通)         │
│  AS 65001          │         │  AS 16509 (Amazon AWS)     │
└────────────────────┘         │  AS 15169 (Google)         │
│  AS 13335 (Cloudflare)    │
└────────────────────────────┘
IGP (OSPF/EIGRP):管理单一 AS 内部的路由
BGP:管理 AS 之间(互联网级别)的路由

核心术语

AS(自治系统,Autonomous System):
统一路由策略下的一组 IP 网络
每个 AS 有一个唯一的 ASN(AS 号)
ASN 范围:
1 - 64511        公网 ASN(向 IANA 申请)
64512 - 65535    私有 ASN(内部使用,不在互联网传播)
4 字节 ASN:更大范围(现代互联网主要使用)
知名 ASN:
AS 15169 = Google
AS 32934 = Facebook/Meta
AS 16509 = Amazon AWS
AS 13335 = Cloudflare
AS 4134  = 中国电信骨干网

eBGP vs iBGP

eBGP(External BGP):不同 AS 之间的 BGP
- 直连物理链路(通常 TTL=1,要求直连)
- 路由传播:eBGP 路由会传给所有邻居
- AD = 20
iBGP(Internal BGP):同一 AS 内部的 BGP
- 不要求直连(TTL=255)
- 水平分割:iBGP 路由不会转发给其他 iBGP 邻居
解决:全互联(Full Mesh)或 Route Reflector
- AD = 200
典型应用:
企业通过 eBGP 连接 ISP
大型企业内部用 iBGP 传播 BGP 路由(而不是重分发到 OSPF)

BGP 路径属性与选路(了解概念)

BGP 不用带宽或跳数作为度量,而是基于路径属性(Path Attributes)做策略路由:
属性(按优先级排序,越高越优先):
1. Weight(Cisco 私有,本地)             越大越优
2. Local Preference(iBGP,AS内共享)     越大越优
3. 本地起源(本 AS 产生的路由优先)
4. AS Path 长度                           越短越优
5. Origin(IGP > EGP > Incomplete)
6. MED(Multi-Exit Discriminator)        越小越优
7. eBGP > iBGP
8. IGP Metric(到 BGP next-hop 的距离)   越小越优
...(还有更多,CCNP 级别)
记忆口诀:We Love Oranges AS Oranges Mean Pure Refreshment
(Weight/LocalPref/LocalOrig/ASPath/Origin/MED/Prefer-eBGP/RID...)

BGP 状态机

Idle → Connect → Active → OpenSent → OpenConfirm → Established
常见停在哪:
Active → 一直 Active = TCP 连接无法建立(防火墙/路由/IP错误)
OpenSent = TCP通了,但参数协商失败(AS号/密码不匹配)
Established = 正常运行
# 查看 BGP 邻居状态
show bgp summary
show ip bgp neighbors

简单 BGP 配置(FRRouting)

# 场景:企业 AS 65001 连接 ISP AS 64512
# 企业路由器接口:10.0.99.1/30
# ISP 路由器接口:10.0.99.2/30
# 企业路由器配置
vtysh
Router# configure terminal
Router(config)# router bgp 65001
Router(config-router)# bgp router-id 1.1.1.1
Router(config-router)# neighbor 10.0.99.2 remote-as 64512    # 配置 eBGP 邻居
# 宣告企业公网前缀
Router(config-router)# address-family ipv4 unicast
Router(config-router-af)# network 203.0.113.0/24             # 企业公网地址段
Router(config-router-af)# exit-address-family
Router(config-router)# exit
# 查看 BGP 邻居和路由表
Router# show bgp summary
Router# show ip bgp
Router# show ip route bgp

BGP 与企业运维的关联

即使不直接配 BGP,运维中也会遇到:
1. 多 ISP 接入(双线接入)
- 两家 ISP 各给一个 BGP 会话
- 通过 Local Preference 控制出口优先级
- 通过 AS Path Prepend 控制 ISP 选择入口
2. 云网络中的 BGP
- AWS VPC 用 BGP 与专线/VPN 交换路由
- 阿里云 CEN 内部用 BGP 传播路由
- Kubernetes MetalLB 用 BGP 向路由器宣告 Service IP
3. 查看 BGP 路由追踪问题
路由不通?先查 BGP 路由是否存在:
# 公共 BGP 查询工具
# bgp.he.net — 查询 IP 前缀归属
# route-views.routeviews.org — Telnet 查看全球 BGP 表
# stat.ripe.net — RIPE 路由统计
4. BGP 劫持(新闻事件)
- 2010年:中国电信宣告了大量不属于自己的路由
- 2022年:多起云服务 BGP 路由泄漏事件
原因:BGP 本身没有强制验证路由所有权(RPKI 是解决方案)

CCNA 对应考点

考纲位置:Domain 3.5 — Describe the purpose of first hop redundancy protocol (CCNA 对 BGP 要求不高,了解基本概念即可;CCNP 企业才深入)

CCNA 需要知道: - BGP 是 EGP(外部网关协议) - AS 号的概念和范围 - eBGP vs iBGP 的区别 - BGP 使用 TCP 179 端口


下一章防火墙、ACL 与网络安全策略——路由让流量能到达目标,防火墙决定哪些流量被允许、哪些被拒绝。