Cisco 300-410: MPLS、VRF 和 L3 VPN 服务 — 学习指南
属于 Cisco CCNP Enterprise 300-410 ENARSI — 学习指南. 使用经过验证的答案练习: Cisco 考试中心, 或参加限时模拟考试: ExamRoll.io.
概述
多协议标签交换 (MPLS) 第 3 层 VPN 将客户路由分离到虚拟路由和转发实例 (VRF) 中,同时使用共享的提供商核心进行传输。提供商边缘 (PE) 路由器负责压入和移除标签栈,以便提供商 (P) 路由器能够纯粹基于标签进行转发,从而保证了可扩展性和隔离性。MP-BGP 使用路由区分符 (RD) 来分发 VPN 路由 (VPNv4/VPNv6) 以确保唯一性,并使用路由目标 (RT) 来控制导入/导出策略。合理的设计要求清晰地划分客户和提供商的角色,谨慎地进行标签分发,并为路由泄漏和共享服务制定明确的策略。运维操作需要可预测的控制平面状态 (IGP, LDP/RSVP, MP-BGP) 和确定性的数据平面行为 (标签栈, PHP),并在 CE–PE–核心边界上进行严格的验证和故障隔离。
MPLS 转发与标签分发
标签格式与标签栈
- 一个 MPLS shim 头部包含一个 20 位的标签、3 位的流量等级 (TC/EXP)、1 位的栈底 (S) 标志和 8 位的 TTL。
- 数据包携带一个标签栈:外部的“传输”标签用于 PE 到 PE 的 LSP,内部的“VPN”标签用于标识出口 PE 的 VRF (或服务)。
- 次末跳弹出 (PHP) 在倒数第二个 P 路由器上移除顶部标签,以减轻出口 PE 的负载;可以使用显式空标签来保留顶部标签,从而将 QoS/TTL 语义保留至出口。
LDP 基础
- P 和 PE 路由器通常运行内部网关协议 (IGP) 来建立可达性,并运行标签分发协议 (LDP) 来将转发等价类 (FEC) 映射到标签。
- LDP 通过 UDP/646 的 hello 报文发现邻居,并通过 TCP/646 建立标签会话,提供可靠的标签信令。目标 LDP (tLDP) 可以为特定的 FEC 建立非直连会话。
- 标签分配/通告方式:
- 独立控制 vs 有序控制:路由器可以在一知道某条路由时就为 FEC 分配标签(独立),或者仅在从其下一跳收到标签后才分配(有序)。
- 自由标签保留 vs 保守标签保留:保留所有收到的标签,或仅保留来自最佳下一跳的标签,这是在内存和收敛灵活性之间做出的权衡。
- LDP router ID 默认使用最高的 loopback 地址(如果存在),否则使用最高的活动接口地址。应稳定该 ID(以及传输网络)以避免会话抖动;考虑使用 LDP-IGP 同步来防止在收敛期间出现黑洞。
P 路由器控制平面范围
- 核心 P 路由器不承载 VPN 路由;它们只运行底层协议 (IGP) 和标签信令协议 (LDP 或 RSVP-TE)。RSVP-TE 可以替代 LDP 或与 LDP 一起使用来进行流量工程。
数据平面路径
- 入口 PE 压入 VPN 标签和传输标签;P 路由器仅交换外部标签;次末跳 P 路由器弹出传输标签(除非使用显式空标签);出口 PE 弹出 VPN 标签,选择 VRF,并通过常规 IP 查找进行转发。
实用配置示例 (IOS/IOS XE)
- 在面向核心的接口上:mpls ip
- 全局配置:mpls label protocol ldp
- 验证:show mpls ldp neighbor, show mpls ldp bindings, show mpls forwarding-table
L3VPN 架构:角色、VRF、RD、RT 和 MP-BGP
角色与边界
- CE (客户边缘):运行面向 PE 的协议(静态、eBGP、OSPF、EIGRP),并持有客户路由;不感知 MPLS。
- PE (提供商边缘):持有每个租户的 VRF,参与 MP-BGP (VPNv4/VPNv6),并负责压入/剥离标签。
- P (提供商核心):仅进行标签交换;无 VRF 状态。
- 客户:CE 和租户路由策略的管理所有者。
VRF 与地址重叠
- 每个租户获得一个 VRF(独立的 RIB/FIB)。允许不同租户之间存在重叠的 IPv4/IPv6 地址空间。
- 路由区分符 (RD) 通过在路由前缀前添加“RD:”来形成 VPNv4/VPNv6 NLRI,从而使每个 VRF 的路由全局唯一;RD 不是一种安全机制,也不控制策略。
- 路由目标 (RT) 是一种 BGP 扩展团体属性,用于在导出时标记路由,并选择一个 VRF 要导入哪些路由。RT 策略是权威的导入/导出控制机制。
MP-BGP 地址族
- VPNv4: AFI 1, SAFI 128。MP_REACH_NLRI 携带下一跳和每条路由的 VPN 标签。VPNv4 路由仅在 PE 节点(和路由反射器)之间分发。
- VPNv6 (6VPE): AFI 2, SAFI 128。实现在 IPv4 MPLS 核心上传输 IPv6 VPN。BGP 下一跳可以保持为 IPv4;PE 为每条 IPv6 路由分配 VPN 标签。
- 在 PE–PE BGP 会话上启用扩展团体属性,以便携带 RT。
简化配置模式 (PE)
- 定义 VRF 和 CE 连接:
- ip vrf CUST-A rd 65000:10 route-target export 65000:10 route-target import 65000:10
- interface GigabitEthernet0/0 ip vrf forwarding CUST-A ip address 10.0.0.1 255.255.255.252
- 用于 VPNv4 的 MP-BGP:
- router bgp 65000 neighbor 192.0.2.2 remote-as 65000 neighbor 192.0.2.2 update-source Loopback0 address-family vpnv4 neighbor 192.0.2.2 activate neighbor 192.0.2.2 send-community extended maximum-paths ibgp 2
- 每个 VRF 的地址族:
- address-family ipv4 vrf CUST-A redistribute connected
- address-family ipv6 vrf CUST-A redistribute connected
- 对于 6VPE:
- address-family vpnv6 neighbor 192.0.2.2 activate neighbor 192.0.2.2 send-community extended
- 定义 VRF 和 CE 连接:
验证
- show ip route vrf CUST-A
- show bgp vpnv4 vrf CUST-A
- show bgp vpnv6 vrf CUST-A
- show bgp vpnv4 all summary
策略、路由泄露、共享服务与分段
RT 导入/导出策略
- 导出:用一个或多个 RT 标记来自某个 VRF 的路由。导入:VRF 会导入任何 RT 与其导入列表匹配的路由。
- 通过 per-VRF 的 route-map(导出/导入 map)可以实现精细化控制,这些 route-map 会匹配前缀并设置/操作 RT。这可以限制路由的意外扩散。
路由泄露方法
- 基于 RT 的泄露(推荐):定义一个共享服务 VRF,用 RT SVC 导出服务前缀,然后将 RT SVC 导入到选定的租户 VRF 中。在租户上使用导出 map 来限制哪些租户路由被导回到服务 VRF。
- 本地 VRF-to-VRF 泄露:在某些平台上,静态路由可以指向其他 VRF 中的接口,或者 BGP 可以在同一 PE 上的 VRF 之间建立对等关系。请谨慎使用;这种方式会绕过 RT 策略,且更难审计。
- 安全权衡:
- 过于宽松的导入会导致任意到任意(any-to-any)的可达性,并可能引发横向移动。
- 没有过滤器的对称泄露可能会产生反馈环路或暴露管理/基础设施前缀。
- 首选采用中心辐射型(hub-and-spoke)的共享服务模型,并配合明确的允许列表(route-map)和防火墙联动机制。
网络分段概念与迁移
- 企业网络分段始于园区网和数据中心内部的 VRF-Lite。MPLS L3VPN 将这些分段扩展到整个 WAN,无需 NAT,并保留了重叠的 IP 地址。
- 迁移方法:
- 将每个本地的 VRF-Lite 分段映射到一个运营商的 RT 对。
- 使用 CE–PE 路由(首选 eBGP)来确定性地交换每个分段的路由。
- 为 DNS/AD/互联网出口引入一个共享服务 VRF,并选择性地将其导入。
- 面向未来的底层网络(Underlay):
- 基于 LDP 或 RSVP-TE 的 LSP 已被广泛部署。Segment Routing MPLS (SR-MPLS) 可以在底层网络中替代 LDP/RSVP,同时保持 L3VPN 服务模型完全相同;唯一的区别是传输标签来自 SR 而不是 LDP/RSVP。
运维:控制平面、数据平面、验证与故障隔离
端到端数据包流程
- CE 将一个前缀通告给入口 PE,并注入到 VRF X 中。
- 入口 PE 将其安装到 VRF X 的 RIB/CEF 中,用 export RTs 为其打上标签,创建一个 VPNv4/v6 NLRI (RD:prefix) 并分配一个 VPN 标签。
- MP-BGP 将该路由通告给远端 PE(或通过路由反射器),携带下一跳(入口 PE 的环回地址)和 VPN 标签。
- IGP 和 LDP/RSVP 建立一条朝向出口 PE 下一跳的传输 LSP。
- 数据平面:入口 PE 推入 VPN 标签(内层)和传输标签(外层);P 路由器交换外层标签;倒数第二跳 P 路由器弹出外层标签(PHP);出口 PE 使用内层标签选择 VRF 并转发到出口 CE。
常见故障模式与权衡
- 底层网络可达性问题或 LDP 中断:MP-BGP 可能仍然处于 up 状态,但如果没有传输 LSP,入口 PE 无法推入有效的外层标签,导致数据包被丢弃。使用 LDP-IGP 同步来防止黑洞。
- 缺少 VPN 标签:存在 VPNv4 路由但没有标签(或标签值为 3 且具有非预期的语义)会中断转发。确认出口 PE 为每个 VRF 分配了标签;检查是否有策略抑制了标签通告。
- RT 不匹配:路由存在于发送方 VRF 中,但未被接收方导入。验证 RTs 并确认扩展团体属性已交换(send-community extended)。
- MTU/分片:标签栈会增加开销。确保核心网和 PE 接口支持足够的 MPLS MTU 以避免丢包;必要时调整 MSS。
- QoS 和 PHP:如果顶层标签被弹出,出口处的 EXP-to-QoS 映射可能会丢失。在出口跳使用显式空标签(explicit-null)以实现 QoS 透明性。
- VPNv4 中的 iBGP 路径选择:如果没有配置
maximum-paths ibgp N,即使核心网中存在 ECMP,也可能只使用一条路径;启用多路径以实现负载分担。
验证工作流程
- CE–PE 边缘:
undefined
、
undefined
或
undefined
- MP-BGP:
undefined
;
undefined
- 标签:
undefined
;
undefined
;
undefined
- 数据平面:
undefined
;
undefined
或到出口 PE 环回地址;如果涉及 QoS,则验证 EXP/TC 标记
健康状况:考虑在 CE–PE 和 PE–PE 邻接关系上使用 BFD 来保护路由会话。
跨 CE、PE 和运营商核心网的故障隔离
- 在入口 PE 上验证 CE–PE 邻接关系是否正常,以及 VRF 路由是否存在。
- 确认路由已导出到 VPNv4,带有预期的 RT,并且在出口 PE 上存在 VPN 标签。
- 确保从入口 PE 到出口 PE 存在传输 LSP(检查 LDP/RSVP 邻居和朝向出口 PE 环回地址的标签)。
- 使用源自 PE 环回地址的 ping/traceroute 测试 PE–PE 间的可达性;验证 ECMP 的一致性。
- 在出口 PE 上,检查 VPN 标签是否能解析到正确的 VRF 和 CE 接口。
- 如果所有控制平面检查都通过,则捕获数据平面的计数器,并验证 MTU 和 QoS 行为。
实际问题场景
Contoso 制造公司计划从 VRF-Lite WAN 迁移到运营商的 MPLS L3VPN,同时引入一个用于互联网和 DNS 的中央共享服务 VRF。租户 A 和 B 内部都使用 10.10.0.0/16 地址空间,并且必须保持隔离,除非需要选择性地访问共享服务。
方法
- 在 PE 上定义 VRF 和 RT 策略
配置:
undefined
undefined
undefined
undefined
-
undefined
undefined
undefined
undefined
-
undefined
undefined
undefined
undefined
- 理由:RD 确保了重叠的 10.10.0.0/16 路由的唯一性。RT 定义了分段边界。为共享服务使用一个独特的 RT 提供了一个可控的中心枢纽。
- 将 CE 接口附加到正确的 VRF 并建立 CE–PE 路由
配置示例:
undefined
undefined
undefined
-
undefined
undefined
undefined
undefined
- 理由:CE–PE 之间的 eBGP 提供了清晰的策略边界和租户级别的控制,避免了属性在不同租户间泄露。
- 在 PE 之间启用 MP-BGP 并传播 RT 和 VPN 标签
配置:
undefined
undefined
undefined
undefined
undefined
undefined
undefined
- 理由:VPNv4 通告同时携带 RT 和每路由的 VPN 标签;启用 iBGP 多路径为跨多个 RR/PE 路径的 ECMP 做好准备。
- 在核心网中构建并验证传输 LSP
配置:
undefined
-
undefined
undefined
undefined
- 理由:LDP 为外层标签创建 PE 到 PE 的 LSP。IGP 中的 ECMP 加上 LDP 支持扩展性和收敛。使用
undefined
和
undefined
进行验证。
- 实现共享服务的选择性路由泄漏
配置(在租户上):
undefined
undefined
-
undefined
undefined
-
undefined
undefined
undefined
undefined
-
undefined
undefined
-
undefined
- 理由:租户只导入共享服务的路由;共享服务导入租户的路由,但只将批准的前缀导出回去,以防止租户通过中心枢纽学习到彼此的路由。
- 验证控制/数据平面和 MTU/QoS
命令:
undefined
-
undefined
-
undefined
-
undefined
-
undefined
- 理由:确认 VRF 路由、标签绑定和端到端可达性。检查接口 MTU 以容纳标签栈并保留 QoS 标记;如果出口需要 EXP 可见性,则启用显式空标签。
- 使用 6VPE 引入 IPv6 VPN
配置:
undefined
undefined
undefined
-
undefined
undefined
- 理由:在同一个 IPv4 MPLS 核心网上提供 IPv6 分段,使用每路由的 VPN 标签和相同的基于 RT 的策略模型。
这个分阶段的计划保留了分段性,实现了可控的共享访问,通过核心网中的标签交换实现了扩展,并为快速故障隔离提供了清晰的验证点。
← 路由重分发和策略路由 · 所有领域 · 组播路由和分发 →
练习这些题目 → · 在 ExamRoll.io 上限时练习 →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
通过考试 →