由于C公司路由器默认对BGP路由NH做lsp迭代导致NE80E下挂用户无法打开网页

发布时间:  2012-07-27 浏览次数:  114 下载次数:  0
问题描述
组网如图所示:
用户--NE80E--------------GSR-1------internet
           |
        NE40------------------GSR-2------internet
NE80E下挂专线用户,网关在NE80E上,割接后,用户反馈NE80E下的用户无法打开部分网站,如淘宝、百度等,但可以ping的通,城域网其他路由器下的用户均没有问题。
告警信息

处理过程
1、由于NE80E下挂的用户无法打开网页,因此最先怀疑是mtu问题,由于流量分为出流量和入流量,因此需要分别分析。经过测试,在NE80E上直接ping -s 1472 -f x.x.x.x发现可以ping通,带源地址ping -a 112.64.x.x  -s 1472 -f x.x.x.x 发现不可以通,经测试,发现减小到1468的时候可以通。下挂用户ping的时候1468以上开始不通。
(正常情况应该是1472字节的icmp报文+8字节icmp头+20字节ip头=1500。 而ping 1468以上就不通,还差了4个字节。)
2、由于带源地址ping存在问题,因此重点检查回程流量,检查配置及询问用户后,发现NE80E下挂用户的回程流量从GSR-2--NE40--NE80的方向回来,由于城域网大部分用户均不存在问题,因此重点怀疑GSR-2和NE40之间、NE40和NE80E之间存在问题点。
3、为尽快恢复业务,用户将NE80E-GSR-1、NE80E-NE40、NE40-GSR-2间的mtu调整为1600后,业务恢复正常。
4、调整mtu后,在NE80E上ping公网发现仍旧是1568以上就不通,问题其实还是存在的。
5、接下来的思路是既然ping 1568以上不通,那么在NE40 input和NE80E input方向做流量统计,定位报文丢在何处?
6、配置后,在NE80E上ping 外网,发现ping小包可以通的时候,NE40统计不到报文,但是在NE80E连接NE40的接口上是可以统计到报文的,报文应该是从NE40过来的,在外网某设备tracert NE80E下挂地址,发现:
<NE5000E_A>tracert  -a  221.212.x.x 112.64.x.x   
 traceroute to  112.64.x.x(112.64.x.x) 30 hops max,40 bytes packet
 1 61.138.0.5 3 ms 61.138.0.9 1 ms 61.138.0.13 1 ms 
 2 61.138.38.69 6 ms  1 ms  1 ms 
 3 219.158.12.93 23 ms  22 ms  22 ms 
 4 219.158.4.78 141 ms  85 ms  102 ms 
 5 219.158.21.250 57 ms  57 ms  57 ms 
 6 210.22.66.194 53 ms  52 ms  52 ms 
 7  *  *  *                                          ------NE40显示为星号
 8 58.247.222.73 59 ms  58 ms  58 ms   ----NE80E连接NE40的地址
NE40地址无法显示出来。
7、综合上述定位过程
(1)ping报文差四个字节
(2)NE40无法统计到流量
(3)tracert无法显示NE40地址
很容易想到NE40这儿是否走了mpls转发,因此一个label正好4个字节,走了lsp转发后,NE40当然无法统计到流量,tracert的时候也不会显示NE40地址。
8、在NE40上display mpls lsp查看,发现没有NE80下挂用户地址的lsp。没有lsp应该不会走lsp转发才对。但是由于上行设备为C公司设备,且NE80E上将用户网段直接import到bgp中,
bgp xxxxx
 ipv4-family unicast
  undo synchronization
  import-route direct route-policy REDIS
  import-route static route-policy REDIS
因此用户网段路由成为了一条bgp路由,C公司设备默认会针对bgp路由的Next-hop做lsp迭代,迭代后走lsp转发,因此怀疑GSR-2送给NE40的时候打了lable,所以ping的时候差了4个字节,tracert和流量统计的问题也能合理解释。
9、指导客户在GSR-2上执行“show ip cef x.x.x.x detail”查看命令,发现GSR-2针对NE80E下挂业务地址打了一个label,因此至此问题定位。
根因

建议与总结
在多厂商组网的网络中,熟练掌握友商设备特性,能更快速定位故障问题所在。

END