NE40E-X8由于BGP路由学习先后顺序以及BGP选路问题导致主备链接切换不成功

发布时间:  2014-12-15 浏览次数:  191 下载次数:  0
问题描述

客户组网大致如上图,正常情况下,192.168.1.0/24与192.168.2.0/24通过MP-BGP方式,走公网mpls路径互访,CLIENT1-CLIENT2之间tracert信息如下:

客户后续在两台NE40E-X8设置之间增加了一条专线,客户想实现的效果是,正常情况下数据走mpls网络互通,当mpls网络不通时,数据走新增加的专线互通
客户把BGP学习到的路由优先级改为50,大于静态路由优先级,当专线连接好并且把相应路由信息添加完成后,PC之间tracert信息依然是走mpls网络,当客户把NE40E-X8连接mpls网络的接口G0/0/2 shutdown后,流量正常切换到走专线,但是当客户再次把G0/0/2接口undo shutdown后,数据不会切换回来走mpls网络
处理过程
1.将NE40E-X8 G0/0/2 shutdonw,undo shutdown后,使用CLIENT1 tracert CLIENT2,确认流量目前并未切换回走mpls网络

2.查看BGP路由学习情况,发现目前通过BGP学习到两条到达192.168.2.0/24的路由,由于本地学习的路由优先级大于从邻居学习的路由,所以走MPLS的路径不是最优的,不会加路由表
[NE40E-1]dis bgp vpnv4 vpn-instance PE1 routing-table

BGP Local router ID is 1.1.1.1
Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


VPN-Instance PE1, Router ID 1.1.1.1:

Total Number of Routes: 5
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

*>   12.1.1.0/24        0.0.0.0         0                     0      ?
*>   12.1.1.1/32        0.0.0.0         0                     0      ?
*>   192.168.1.0        0.0.0.0         0                     0      ?
*>   192.168.1.1/32     0.0.0.0         0                     0      ?
*>   192.168.2.0        0.0.0.0         0                     0      ?
[NE40E-1]
[NE40E-1]
[NE40E-1]dis iprou
[NE40E-1]dis bgp vpnv4 vpn-instance PE1 routing-table

BGP Local router ID is 1.1.1.1
Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


VPN-Instance PE1, Router ID 1.1.1.1:

Total Number of Routes: 7
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

*>   12.1.1.0/24        0.0.0.0         0                     0      ?
*                       2.2.2.2         0                     0      101?
*>   12.1.1.1/32        0.0.0.0         0                     0      ?
*>   192.168.1.0        0.0.0.0         0                     0      ?
*>   192.168.1.1/32     0.0.0.0         0                     0      ?
*>   192.168.2.0        0.0.0.0         0                     0      ?
*                                  2.2.2.2         0                     0      101?
3.查看NE40E关于BGP配置,客户中把静态路由重分发进BGP中了
ipv4-family vpn-instance PE1
  preference 50 50 255
  import-route direct
  import-route static
4.修改NE40E-X8处将静态路由不重分发进BGP中,问题解决
解决方案
将BGP中重分发静态路由配置删除
bgp 100
ipv4-family vpn-instance PE1
      undo import-route static

建议与总结
为什么第一次将专线相关配置设置好后,路由还是继续走mpls,而不是根据本地注入路由优先而把mpls侧学习的路由从路由表中去掉
该问题是因为,在刚加上静态路由时,路由表中已经存在一条指向192.168.2.0/24的路由,该路由是通过EBGP学习到的,客户将EBGP学习的路由优先级设置成50,比静态路由优先,所有静态路由没有生效,所有此时BGP中还是只学习到了一条通过mpls网络到达对端的路由

END