首页/网络/BGP 与广域网速查/VRF 基础:RIB/FIB 的虚拟化切片
MPLS 与专线70 条

VRF 基础:RIB/FIB 的虚拟化切片

VRF 为每个客户维护独立路由表与转发表;接口绑定 VRF 后,其流量只按该 VRF 的路由转发,是 L3VPN 在 PE 侧的隔离单元。

BGP 与广域网速查网络更新于 2026-10-13

VRF 把路由表切成互不可见的几份

VRF(Virtual Routing and Forwarding)在一台设备上虚拟出多套独立的路由表与转发表。接口绑定某个 VRF 后,该接口收到的流量只按这个 VRF 的路由转发,与默认表互不影响。它解决的是「同一台设备承载多个地址空间重叠的客户」这一问题,是 MPLS L3VPN 在 PE 侧的基本隔离单元。

基本信息

组成要素VRF 定义、RD(唯一化)、RT(导入导出)、独立 RIB/FIB
接口归属接口绑定后其地址与路由都属于该 VRF
容量一台设备可创建多个 VRF,数量受平台规格限制
命名建议与客户或业务一一对应,避免用编号导致后期无法识别
适用平台Cisco IOS/IOS-XE、华为 VRP、Juniper 等主流设备

典型使用场景

  • MPLS L3VPN:同一台 PE 承载多个客户,客户地址段可完全重叠
  • 多租户数据中心:租户之间三层隔离,安全边界最清晰
  • VRF Lite:不使用 MPLS,仅靠 VRF 与静态或 GRE 隧道实现隔离
  • 管理与业务分离:带外管理使用独立 VRF,避免管理流量受业务抖动影响
  • 按业务分流:不同业务走不同 VRF,各自使用独立的出口策略

基础核查命令

基础核查命令
# Cisco
show ip vrf
show ip vrf interfaces
show ip route vrf CUST-A
show ip bgp vpnv4 vrf CUST-A summary
# 测试连通性时要指定 VRF,否则走默认表
ping vrf CUST-A 10.10.2.2 source 10.10.2.1
!
# 华为
# display ip vpn-instance
# display ip vpn-instance verbose
# display ip routing-table vpn-instance CUST-A
# ping -vpn-instance CUST-A 10.10.2.2

RD 与 RT 的分工

概念作用取值要求
RD给前缀加上标识,使不同 VRF 的相同前缀在 VPNv4 表中唯一同一 PE 内不可重复,不同 PE 可以相同
RT声明导入导出关系,决定谁能收到我的路由互联双方需事先约定,可配多条
VRF 名称本机配置中的标识,只在设备内部有效不同设备可以取不同名字

常见排错路径

常见排错路径
# 1) 接口是否真的在 VRF 里
show ip vrf interfaces CUST-A
# 2) VRF 内是否有路由
show ip route vrf CUST-A
# 3) 会话内是否收到对端路由
show ip bgp vpnv4 vrf CUST-A
# 4) 是否带 RT 扩展团体
show ip bgp vpnv4 all 10.10.1.0/24 | include Extended
# 5) 转发是否学到位
show ip cef vrf CUST-A 10.10.2.2
测试时最容易忽略的一点:在 PE 上执行 ping 或 traceroute 如果不指定 VRF,命令走的是全局默认表,即使业务正常也会显示不可达。核对连通性时务必带上 VRF 参数。

易错点

  • 接口没有绑定 VRF:地址落到默认表里,客户路由与全局表混在一起,隔离失效且不易察觉
  • 多个客户复用同一个 RD:地址重叠时 VPNv4 表中的更新互相覆盖,一侧业务静默中断
  • 把 VRF 当成安全隔离的充分条件:它只隔离路由与转发,跨 VRF 访问仍需配套 ACL 或防火墙策略
  • 割接时把管理接口绑进 VRF:接口地址被清除导致远程登录中断,恢复只能到现场
  • 排错时用不带 VRF 的 ping 得出结论:命令走默认表,实际业务可能完全正常

数据来源与参考

  • RFC 4364: BGP/MPLS IP VPNs
  • Cisco: VRF 配置指南
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌