MPLS VPN分为二层MPLS VPN和三层MPLS VPN两种。二层MPLS VPN适合于能自行组建三层网络的大型企业;三层MPLS VPN适合于维护路由等复杂工作交由运营商负责的中小企业。本文简单介绍三层MPLS VPN的组网及其故障处理。
1 三层MPLS VPN简介
三层MPLS VPN又称BGP MPLS VPN,是一种基于路由方式的MPLS VPN解决方案。IETF RFC 2547中对该技术做了规定。
三层MPLS VPN的网络结构,主要由PE(Provider Edge Device,运营商边缘设备)、P(Provide Device,运营商设备)和CE(Customer Edge Device,用户边缘设备)3种设备组成。
下面简要介绍上述设备所实现的功能。
CE:通过连接到PE的数据链路为用户提供网络服务,CE与PE建立邻接关系,将本地的VPN路由广播给PE,并从PE学习远端VPN路由。
PE:维护与之相连站点的VPN路由,为每个VPN建立一个VRF(Virtual Route Forwarding Table,虚拟路由转发表)。在从CE那里学习到本地路由信息后,PE使用IBGP与其它PE路由器交换VPN路由信息。同时,在VPN业务穿越骨干网时,入口/出口PE分别相当于入口/出口LSR(Lable Switch Router,标签交换路由器),需要为IP包进行封装/解封装。
P:运营商网络中不直接连接CE的路由器,仅负责MPLS标签的交换,不需要维护VPN路由信息。
,三层MPLS VPN通过多协议扩展BGP(MP-iBGP)承载携带标签的VPN IPv4路由信息。每个VRF通过配置响应策略来规定各VPN可以接收和向外发布站点的路由信息。每个PE根据BGP扩展发布的信息进行路由计算,生成并维护VPN路由表。
2 三层MPLS VPN故障的排除
三层MPLS VPN的故障主要可归纳为路由信息方面的故障和MPLS数据流方面的故障两种。下面以Cisco路由器为例,简单介绍如何排除三层MPLS VPN故障。 2.1 路由信息方面故障的处理
我们可以采用逐步排除法来解决路由信息方面的故障,,即根据三层MPLS VPN路由的交换过程逐步排查,最后确定故障所在位置。我们把这种故障处理的流程大致分成7步。
以下是各个步骤具体所要执行的操作。
(1) 在PE-1上使用命令“show ip route vrf name”验证PE-1是否收到CE-1的路由信息。若收到了来自CE-1的路由信息,则转到步骤(2);否则,采用传统的路由排障方法查找PE与CE之间的物理层或路由协议(PE与CE之间可运行各种路由协议,如RIP、OSPF、eBGP或静态路由协议)是否有问题。
(2) 在PE-1上使用命令“show ip bgp vpnv4 vrf name”验证该路由是否正确地发布到MP-BGP中并带有正确的扩展属性。若正确,则转到步骤(3);否则,可确定路由的重发布等方面存在问题(可使用“debug ip bgp”等命令排障)。
(3) 在PE-2上使用命令“show ip bgp vpnv4 all”验证其它VPNv4路由是否已通过MP-iBGP传送过来。若已经收到了其它VPNv4的路由信息,则转到步骤(4);否则,应采用传统的BGP路由排障方法查找PE-2与其它PE之间的连接是否有问题(可使用“show ip bgp neighbor”等命令)。
(4) 在PE-2上使用命令“show ip bgp vpnv4 vrf name”验证BGP的路由选择是否正确,即属于该VPN的路由信息是否都被正确地接收了,而不属于该VPN的路由信息是否被阻止了。若正确,则转到步骤(5);否则,应采用传统的BGP路由排障方法来解决,必要时,可更改“local preference”和“weight”等BGP参数。
(5) 在PE-2上使用命令“show ip route vrf name”验证PE-2路由表中是否已存在正确的VPNv4路由信息。若正确,则转到步骤(6);否则,说明PE-2上存在问题(可使用“show ip vrf detail”和传统的路由排障方法来解决)。
(6) 在CE-2上使用“show ip route,ping”等命令验证CE-2是否已接收到其它CE的路由信息。若正确,则转到步骤(7);否则,应查看PE-2上的路由重发布是否设置正确、PE-2与CE-2之间的物理层或路由协议是否有问题。
(7) 从CE-2到CE-1,可采用相同的方法来排除路由交换方面的故障。
2.2 MPLS数据流方面故障的处理
对于MPLS数据流方面的故障,可从以下4个方面来定位:
(1) 入口PE路由器上CEF(Cisco EXPress For-warding,思科快速转发)端口是否打开;
(2) 入口PE路由器上的CEF条目是否正确;
(3) PE路由器之间是否有端到端的LSP(La-bel Switch Path,标签交换路径),这包括检查中间的P路由器;
(4) 出口PE路由器上的标签转发表的条目是否正确。