因MTU 不一致导致BGP邻居震荡

发布时间:  2016-06-15 浏览次数:  167 下载次数:  0
问题描述
网络拓扑



NE40E 与对端思科设备之间运行EBGP
故障现象:
NE40E与Cisco 能正常建立EBGP邻居,邻居状态能进入establish 状态
但是等到hold time 之后,NE40E弹出告警信息,提示hold time 超时,随后邻居down

处理过程

原因分析:
在NE40E上做查看邻居,发现该邻居在整个交互过程中,只发送了两个包给我们


进一步debug,发现该邻居只发送了2个报文给NE40E
从debug 信息来看,该邻居只发送了open 报文和第一个keepalive 报文。后续的update 报文和keepalive报文我们全部都没有收到。
进而怀疑是后续报文都被丢掉了,很有可能就是MTU不一致导致的。

根因
原始NE40E和Cisco 接口的MTU都是4470。怀疑为中间传输设备的MTU值太小且不允许分片。
尝试NE40E和Cisco上互ping 大包,发现只能ping 到1500、大于1500的包不通。
于是在NE40E和Cisco 上都调整MTU,当MTU调整为1500后,邻居建立正常,路由学习正常。
解决方案
调整双方的MTU为1500

END