MPLS PE双RD组网产生次优路由经验案例
一、 组网:
二、 参照下列拓扑,网络故障情况说明如下:
某客户网络为MPLS Option B跨域组网,总部数据中心采用我司两台SR6608路由器,各分公司采用我司一台AR46和一台MSR5040路由器做为出口PE,用户需要将不同的业务进行分流,如组网图所示,用户要求视频业务流量从MSR5040路由器到达总部,完全正常用户网络在正常运行时业务,从总部往分公司多次执行Traceroute显示视频终端访问总部视频服务器的来回路由一致,均按照要求经过S75E->MSR5040->SR66-2,数据流如图中红色绿色箭头表示,最后到达总部视频服务器;
三、 问题描述:
为测试组网冗余可靠性,用户将分公司的AR46路由器进行关电操作,发现AR46关电后,经过MSR5040转发的视频业务中断,中断时间在90秒左右;接发现所有分公司都存在这个问题,所有分公司网络构架完全一样,怀疑用户组网设计存在问题。下来对其它分公司的测试,
四、 过程分析:
1、在将路由器01(AR46)关电之前,通过在S75E执行Traceroute显示视频终端访问总部视频服务器的来回路由【没有从总部视频服务器traceroute分公司】,结果显示如下:
C:\Users\mklin>tracert -d 110.8.0.1
通过最多 30 个跃点跟踪到 110.8.0.1 的路由
1 1 ms <1 毫秒 <1 毫秒 110.34.1.252
2 <1 毫秒 <1 毫秒 <1 毫秒 110.34.3.62
3 4 ms 4 ms 4 ms 110.15.15.1
4 5 ms 5 ms 5 ms 110.15.15.6
5 6 ms 5 ms 5 ms 110.15.15.38
6 5 ms 4 ms 4 ms 110.8.0.1
跟踪完成。
2、分公司进行对路由器01(AR46)进行关机操作后,分公司流量在后续半分钟至一分钟内迁移至路由器02(MSR5040)(完成路由及mpls标签等地收敛)。
3、在路由器01(AR46)关机后,发现分公司视频终端到亦庄视频服务器的通信也会中断半分钟左右,当网络逐步收敛稳定后,恢复通信(正常情况路由器01的关机不会影响此数据流)!针对分公司到亦庄视频服务器通信中断现象,我们故障前及故障中在ZCBJSW0B-A4 ,ZCBJWA02-A1 ,YZ66WA01-A1 ,CDYZ-7503-1 ,CDYZ-5500-3上针对视频客户端及视频服务器端路由进行双向查看,设备路由表及设备FIB表,设备Lable表均未发生抖动和改变!对AR46路由器关电操作时,记录MSR5040、SR66-2、S75E的路由表,私网路由表、FIB转发表、MPLS标签表,对比所记录的表项,发现故障前及故障中均未发生改变!
4、在分公司S75E上带视频网段网关进行tracert总部视频服务器,故障中数据包转发到ZCBJWA02-A1后显示为*,定位问题可能出现在SR66-02和MSR5040上,tracert跟踪结果如下:
C:\Users\mklin>tracert -d 110.8.0.1
通过最多 30 个跃点跟踪到 110.8.0.1 的路由
1 1 ms <1 毫秒 <1 毫秒 110.34.1.252
2 <1 毫秒 <1 毫秒 <1 毫秒 110.34.3.62
3 * * * 请求超时。
4 * * * 请求超时。
5 * * * 请求超时。
6 * * * 请求超时。
7 * * * 请求超时。
8 * * * 请求超时。
9 * * * 请求超时。
10 * 21 ms 4 ms 110.8.0.1【经过路由中断收敛,网络恢复正常】
5、查看SR66-02路由器上分公司对应的视频网段110.34.1.0/24路由表项详细信息,SR66-02路由表项中发现能学习到三条路由,分别是SR66-01、MSR5040始发一条、MSR5040从AR46学习并转发一条,可以从OSPF Router Id判断路由表项来源,SR66-02路由器当前选用MSR5040从AR46学习并转发的这条路由为主用路由,选为主用路由的原因是MED属性为0 ,其它两条路由的MED属性分别为59、12,都比0大,所以处于抑制状态没有选用;
<YZ66WA01-A1>dis bgp vpnv4 vpn-instance jt-video routing-table 110.34.1.0
BGP local router ID : 172.17.0.254
Local AS number : 64020
Paths: 3 available, 2 best, 0 VPN best
BGP routing table entry information of 0.0.0.0/0:
Label information (Received/Applied): 9544/NULL
From : 172.16.0.17 (172.16.0.254)
Relay Nexthop : 0.0.0.0
Original nexthop: 172.16.0.17
Ext-Community : <RT: 10:2000>, <RT: 10:2001>, <OSPF Domain Id: 0.0.0.1:0>, <OSPF Router Id: 80.255.255.14:0:0>, <OSPF AreaNum: 0.0.0.0 RouteType: 5 Option: 0>
AS-path : 64040
Origin : incomplete
Attribute value : MED 59, pref-val 0, pre 255
State : valid, external, best,
Not advertised to any peers yet
Not advertised to any VPN peers yet
BGP routing table entry information of 110.34.1.0/24:
Label information (Received/Applied): 4457/NULL (压入4457标签,该标签由MSR5040为AR46始发的110.34.1.0/24网段所分配)
From : 172.17.1.2 (172.20.0.253)
Relay Nexthop : 0.0.0.0
Original nexthop: 172.17.1.2
Ext-Community : <RT: 10:201>, <OSPF Domain Id: 0.0.0.1:0>, <OSPF Router Id: 110.34.3.94:0:0>, <OSPF AreaNum: 0.0.0.0 RouteType: 3 Option: 0>
AS-path : 64100
Origin : incomplete
Attribute value : pref-val 0, pre 255
State : valid, external, best,(最佳路由因为MED=0)
Not advertised to any peers yet
Not advertised to any VPN peers yet
BGP routing table entry information of 110.34.1.0/24:
Label information (Received/Applied): 1469/NULL
From : 172.17.1.2 (172.20.0.253)
Relay Nexthop : 0.0.0.0
Original nexthop: 172.17.1.2
Ext-Community : <RT: 10:201>, <OSPF Domain Id: 0.0.0.1:0>, <OSPF Router Id: 110.34.3.62:0:0>, <OSPF AreaNum: 0.0.0.0 RouteType: 3 Option: 0>
AS-path : 64100
Origin : incomplete
Attribute value : MED 12, pref-val 0, pre 255
State : valid, external,
Not advertised to any peers yet
Not advertised to any VPN peers yet
6、进一步分析,由于SR66-02路由器选用了MSR5040从AR46学习并转发的这条路由,导致MPLS标签也是由AR46路由器始发分配,简单从路由表、FIB表项来看都是正常转发给MSR5040,但MPLS标签存在问题;
7、分析为何SR66-02路由器能从MSR5040收到两条去往110.34.1.0/24网段的路由信息,查看MSR5040和AR46的设备运行配置,发现两台设备上jt-video VPN实例中的RD值配置不相同,MSR5040上jit-video RD值为10:202,AR46上配置的RD值为10:201;当MSR5040收到与自己RD值不一致的路由时,当作两条不同的路由直接分配置MPLS标签,然后将这两条路由发送给了SR66-02;同时,由于AR46与MSR5040之间使用的是IBGP,MSR5040与SR66-02之间使用EBGP,MSR5040将从IBGP邻居学习到的路由通告给EBGP邻居时,将所通告路由的MED值清除了,SR66-02根据BGP选路原则,优选了MED值最小的路由,所以查看路由表、FIB表都正常,只有去往110.34.1.0/24标签存在问题;
8、由于MPLS标签存在问题,指向了AR46路由器,当AR46路由器关电时,需要等待IBGP邻居超时中断,路由表和标签表才会重新收敛,恢复通信;至此,问题已经定位。
五、 解决方法:
有如下解决方案:
1.如果路由没有MED属性,BGP选路时将该路由的MED值按缺省值0来处理;在SR66-02路由器上执行bestroute med-none-as-maximum命令后,BGP选路时将该路由的MED值按最大值4294967295来处理;但当前SR66路由器版本不支持此命令。
2.在MSR5040上启用路由策略,在给EBGP邻居(SR66-02)路由器发送路由时,强制携带MED值,将AR46始发的110.34.1.0/24网段路由的MED值加大
3.在SR66-02路由器上配置EBGP路由策略,在BGP VPNV4路由中引用该路由策略,将收到的MED值为0的路由强制修改MED值,修改的MED值只需要比MSR5040当前始发的110.34.1.0/24网段MED值大即可。
推荐配置命令如下:
route-policy import_add_med permit node 10
if-match cost 0
apply cost 10000
4.取消RD不对称的设计,将AR46与MSR5040的RD值配置成相同,但AR46属于V3软件平台,存在双RD组网路由撤销时可能存在问题,当全网AR46路由器替换为MSR后可以采用该方案。
5. 去除AR46与MSR5040之间的IBGP邻居,消除次优路由。
以上方案推荐采用第二、第五种。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作