1 城域网割接及割接引起业务中断的案例整理分析

这是一例发生在运行MPLS VPN的网络上由ios软件Bug引起的故障案例,我把他整理出来供大家参考和讨论,故障的发生和解决都带有偶然性,并不重要, 只希望通过讨论,能够提高我们分析问题,解决问题的能力.

一、故障缘由

某城市A城域网骨干两台7206(R1和R2)上联核心网,下联城域,互为备份,运行MPLS,图就不画了,呵呵 。某日升级城域,对城域网进行调整和扩容 。(下文中的城市B的城域结构有所不同,规模也大些,但在此例中也可按此结构理解,故不做具体说明)

升级过程:

1、 升级7206ios

2、 业务割接

3、 冗余测试、HSRP测试和全网测试、业务测试,做最后一次用户连通性测试,OK,走人!

4、 观察阶段 。

第二天,某用户报MPLS VPN网络不通 。(注:割接过程不对用户配置进行修改!)

二、故障现象

用户报割接城市A到另外城市B的MPLS VPN业务中断 。

城市A的某用户业务是通过CE设备以MPLS VPN的形式接入到城市A的PE路由器上(就是刚刚将的升级过的骨干路由器Cisco VXR 7206)的,同样,城市B的某用户业务是通过CE设备以MPLS VPN的形式接入到省骨干网相应的PE路由器 。

故障现象是城市A的某用户可以PING通城市A本地的PE路由器,城市A某用户本地网络连接无任何问题,但不能PING通远端城市B的PE路由器的某用户业务子接口 。

同样城市B的某用户可以PING通城市B本地的PE路由器,城市B某用户本地网络连接无任何问题,但不能PING通远端城市A的PE路由器 。

最希奇的是: 城市A某用户业务所连接的PE路由器上,同时存在其他五个VPN的用户,这五个VPN用户网络业务运行完全正常 。且其网络业务的设置与某用户业务的设置是同一类型的 。所有的VPN业务之间的命令比较,不多一句,不少一句 。

某用户VPN业务,城市A和城市B之间的VPN及IPV4的路由完全正常!

三、排错过程
(1)故障的隔离

第一时间在城市A某用户VPN所在的省骨干PE路由器上 Cisco 7206VXR上开设逻辑端口Loopback1,并将Loopback1 划入某用户VPN,此时城市B某用户VPN可以收到此Loopback 地址的路由,但仍然无法PING通该Loopback地址 。因此可证实某用户VPN的中断不是新增的城域网设备引起的,问题产生在省骨干路由器之间的MPLS交互进程上 。此时我们把所有的工作重点放在省骨干网之间的排错上 。
【1 城域网割接及割接引起业务中断的案例整理分析】(2)命令处理流程

主要的处理工作如下:

1. 在城市A的骨干路由器r2上使用命令show ip vrf 检查mpls vpn的配置和RD的名字 。发现都是正确的 。使用命令show ip vrf detail vpn9:XXX.VPN和show ip vrf interface检查某用户vpn的路由属性,和它的接口状态和ip地址 。发现都是正确的 。使用命令show ip bgp neighbors/show ip bgp vpnv4 all /show ip bgp vpnv4 vrf vpn9:XXX.VPN检查城市A和城市B两PE间的BGP关系 。发现都是正确的 。

2.在城市A的骨干路由器r2上使用命令show ip route vrf vpn9:XXX.VPN 。可以看到vpn的路由是正确的,分别是一条直连的路由(城市A本地某用户)和一条bgp的路由(城市B某用户) 。使用命令ping vrf vpn9:XXX.VPN 210.5.2.130。测试城市A本地PE到城市A本地CE的联通性 。测试结果是通的 。使用命令ping vrf vpn9:XXX.VPN X.X.X.X 。测试城市A本地PE到城市BPE的联通性 。测试结果是ping不通 。

3.然后telnet到城市B的PE路由器上,使用命令show ip route vrf vpn9:XXX.VPN 。可以看到vpn的路由是正确的,分别是一条直连的路由(城市B本地某用户)和一条bgp的路由(城市A某用户) 。使用命令ping vrf vpn9:XXX.VPN 210.5.0.222。测试城市B本地PE到城市B本地CE的联通性 。测试结果是通的 。使用命令ping vrf vpn9:XXX.VPN 210.5.2.129. 。测试城市BPE到城市A PE的联通性 。测试结果是ping不通 。

推荐阅读