第168篇:跨域 L3VPN Option A/B/C 方案对比

关键词

跨域 VPN、Option A(VRF-to-VRF)、Option B(单跳 MP-EBGP)、Option C(多跳 MP-EBGP)、ASBR、Inter-AS


一、为什么需要跨域 VPN?

1.1 场景

运营商的 MPLS 骨干可能跨越多个自治域(AS):

     AS 100                   AS 200

| 骨干 A PE1 ── P1 ──── ASBR1─ASBR2 ── P2 ── PE2 | CE1(企业A站点1) | | 骨干 B | CE2(企业A站点2) | | --- | --- | --- |

同一个企业客户的站点分布在不同的运营商网络中,需要 MPLS L3VPN 跨域互通。

1.2 三种跨域方案

IETF RFC 4364 定义了三种跨域 L3VPN 方案:

方案 名称 ASBR 参与程度 适用场景
Option A VRF-to-VRF ASBR 维护 VRF,完全参与 VPN 少量跨域 VPN
Option B 单跳 MP-EBGP ASBR 转发 VPNv4 路由 中等规模跨域
Option C 多跳 MP-EBGP ASBR 仅转发标签,PE 直连 VPN 大规模跨域

二、Option A(VRF-to-VRF - 背靠背)

2.1 原理

             AS 100                  AS 200
┌──┴──┐ ┌──┴──┐ ┌──┴──┐ ┌──┴──┐
CE1 ─────── ASBR1 ASBR2 ─────── CE2
│ │
VRF-A VRF-A
──── ────
直连EBGP/ 直连EBGP/
OSPF OSPF

ASBR1 和 ASBR2 之间通过物理接口或子接口直连,各自在 VRF 中与对方建立 EBGP 会话(或运行其他路由协议)。

2.2 工作流程

ASBR1(AS 100):
  1. 从 VRF-A 中学习 CE1 的路由(通过 PE-CE 协议)
  2. 在直连接口(绑定 VRF-A)上
     通过 EBGP 将路由发布给 ASBR2
  3. 从 ASBR2 学习到 CE2 的路由,导入 VRF-A
  4. 通过 PE-CE 协议发布给 CE1

ASBR2(AS 200):
  对称操作

2.3 配置要点

# ASBR1 配置
ip vpn-instance VRF-A
 route-distinguisher 100:1
 vpn-target 1:1 export-extcommunity
 vpn-target 1:1 import-extcommunity
!
interface GigabitEthernet0/0/0
 ip binding vpn-instance VRF-A             # 对间直连接口绑定 VRF
 ip address 10.0.0.1 255.255.255.252
!
bgp 100
 ipv4-family vpn-instance VRF-A
  peer 10.0.0.2 as-number 200               # 与 ASBR2 的 VRF 建 EBGP

2.4 优缺点

优点 缺点
简单,ASBR 配置少 ASBR 需要维护 VRF,扩展性差
无 MPLS 跨域必要 每个跨域 VPN 需要独立子接口/子网
路由完全隔离 跨域 VPN 多时,ASBR 接口数爆炸
易于部署 部署和扩展慢

三、Option B(单跳 MP-EBGP)

3.1 原理

              AS 100                    AS 200
┌──┴──┐ ┌──┴──┐ ┌──┴──┐ ┌──┴──┐
CE1 ──────── ASBR1 ASBR2 ──────── CE2
│ │
MP-EBGP │ │
VPNv4 ▼ ▼
携带标签交换

ASBR1 和 ASBR2 之间运行 MP-EBGP,直接交换 VPNv4 路由(含标签)。

3.2 工作流程

ASBR1 收到 PE1 的 VPNv4 路由(通过 MP-IBGP)
  │
  ├─ 下一跳改为自己(ASBR1)
  ├─ VPN 标签重新分配(ASBR1 分配新标签)
  └─ 通过 MP-EBGP 发送给 ASBR2

ASBR2 收到后:
  ├─ 下一跳改为自己
  ├─ 重新分配标签
  └─ 通过 MP-IBGP 发送给 PE2

3.3 标签处理

PE1 → ASBR1 → ASBR2 → PE2

ASBR1 转发表:(到 CE2)
  In-Label(本地)  Out-Label  Next-Hop
  15920           36840      ASBR2  ← ASBR2 分配的 VPN 标签

ASBR2 收到标签 36840:
  查表 → 对应 VRF 或 VPN → 转发到 PE2

3.4 配置要点

# ASBR1 配置
bgp 100
 #
 peer 10.0.0.2 as-number 200               # 对间直连地址
 #
 ipv4-family vpnv4                         # VPNv4 地址族
  peer 10.0.0.2 enable
  peer 10.0.0.2 label-route-capability      # 发送标签能力
  undo policy vpn-target                    # ⚠️ 重要:不校验 RT

关键配置:undo policy vpn-target - 默认 ASBR 会校验 RT 并过滤路由 - 跨域场景 ASBR 需要透传所有 VPNv4 路由 - 因此需要关闭 RT 过滤

3.5 优缺点

优点 缺点
无需 ASBR 维护 VRF ASBR 需要维护所有跨域 VPNv4 路由
一根子接口支持所有跨域 VPN ASBR 负担较重(路由表膨胀)
扩展性比 Option A 好 不太适合超大规模跨域

四、Option C(多跳 MP-EBGP)

4.1 原理

               AS 100                    AS 200
┌──┴──┐ ┌──┴──┐ ┌──┴──┐ ┌──┴──┐
CE1 ──────── ASBR1 ASBR2 ──────── CE2
│ │
───────┤ ├───────
│ │
PE1 ───────────── PE2
多跳 MP-EBGP(直接交换 VPNv4 路由)

PE1 和 PE2 之间直接建立 多跳 MP-EBGP 会话,绕过 ASBR。 ASBR 只做标签交换(LDP 跨域),不参与 VPN 路由。

4.2 工作流程

步骤 1:跨域 LDP 邻居建立(ASBR 之间)
  ASBR1 ─── ASBR2:建立 LDP 会话
  ASBR 分配跨域标签

步骤 2:跨域 IGP 路由互通
  两台 ASBR 交换到各自 PE Loopback 的路由(通过 IGP 或静态)

步骤 3:PE 之间建立多跳 MP-EBGP
  PE1 ──▶ PE2:直接交换 VPNv4 路由
  PE2 ──▶ PE1:直接交换 VPNv4 路由

步骤 4:标签映射
  PE1 到 PE2 需要 LSP:
    PE1 → ASBR1(LDP)
    ASBR1 → ASBR2(跨域 LDP 或静态标签)
    ASBR2 → PE2(LDP)

4.3 配置要点

# ASBR1 配置(不做 VPN,只做标签交换)
bgp 100
 peer 10.0.0.2 as-number 200
 #
 ipv4-family unicast                       # 只交换 IPv4 单播
  peer 10.0.0.2 enable
  peer 10.0.0.2 route-policy LABEL_ASBR   # 为 PE Loopback 分配标签
  network 1.1.1.1 255.255.255.255         # 发布 PE1 Loopback

# PE1 配置(直接与 PE2 建 MP-EBGP)
bgp 100
 peer 2.2.2.2 as-number 200
 peer 2.2.2.2 ebgp-multihop 10           # 多跳(非直连)
 peer 2.2.2.2 connect-interface LoopBack0
 #
 ipv4-family vpnv4
  peer 2.2.2.2 enable
  peer 2.2.2.2 label-route-capability

4.4 优缺点

优点 缺点
ASBR 不做 VPN,轻量 配置最复杂
扩展性最好 需要跨域 IGP/LDP 协调
适合大规模多域场景 对跨域标签协商有要求

五、三种方案对比总结

对比维度 Option A Option B Option C
ASBR 角色 维护 VRF 转发 VPNv4 路由 仅交换标签
ASBR 配置量
VPN 路由存储 ASBR 的 VRF 中 ASBR 的 BGP 表中 ASBR 不存
跨域接口 每 VPN 一个子接口 一个子接口共享 一个子接口共享
扩展性
标签 ASBR 重分配 ASBR 重分配 端到端标签
最佳场景 VPN 数量 < 10 VPN 数量 10-100 VPN 数量 > 100

六、实际选型建议

企业需求 推荐方案
少量跨域 VPN(< 10 个客户) Option A
中等规模、ASBR 性能尚可 Option B
超大规模、多 AS、要求扩展性 Option C
ASBR 驻留在传输设备(无 VRF 能力) Option C
运维团队技术能力一般 Option A(最简单)
运维团队有 BGP 经验 Option B 或 C

七、总结

方案 核心理念 最大优势 最大劣势
Option A VRF 背靠背直连 简单易懂 扩展性差
Option B ASBR 转发 VPNv4 无需 VRF ASBR 路由负载上升
Option C PE 直连 + ASBR 只转发标签 最优扩展性 配置复杂

八、思考

  1. Option A 中,ASBR 为什么要维护 VRF?
  2. Option B 中 undo policy vpn-target 的作用是什么?为什么需要它?
  3. Option C 中,ASBR 为什么不需要处理 VPNv4 路由?那 VPN 标签如何跨域传递?
  4. 三种方案在 ASBR 承担的职责上有什么本质区别?
  5. 假设有 200 个 VPN 需要跨两个 AS 互通,你会推荐哪种方案?为什么?

下篇预告:第169篇《MPLS L2VPN 基础:VPWS 伪线仿真》——从 L3VPN 转向 L2VPN,理解 VPWS 如何在运营商网络上仿真一条点到点的二层链路。