某局点使用我司MSR3620路由器替换第三发设备,并且与第三方对接静态路由与BFD联动,配置后发现bfd会话无法正常up。之前第三方设备自己对接正常,两台HW关键配置如下
总部HW设备:
#
interface Vlanif316
description to-XXX
ip address x.x.x.x 255.255.255.252
#
interface Vlanif2000
description MSTP-to-XX
ip address x.x.x.x 255.255.255.252
#
bfd 2 bind peer-ip x.x.x.x source-ip x.x.x.x discriminator local 2
discriminator remote 1
commit
#
ip route-static y.y.y.y 255.255.255.192 x.x.x.x preference 80 track bfd-session 2
ip route-static y.y.y.y 255.255.255.192 x.x.x.x preference 100
分部第三方设备:
#
interface Vlanif316
description to-xxx
ip address x.x.x.x 255.255.255.252
#
interface Vlanif2000
description xxx
ip address x.x.x.x 255.255.255.252
#
bfd 1 bind peer-ip x.x.x.x source-ip x.x.x.x
discriminator local 1
discriminator remote 2
commit
#
ip route-static 0.0.0.0 0.0.0.0 x.x.x.x preference 80 track bfd-session 1
ip route-static 0.0.0.0 0.0.0.0 x.x.x.x preference 100
#
总部是第三方设备,现在华三MSR3620需要替换HW总部设备,华三对应的单向bfd配置后BFD会话无法正常建立。
华三设备配置如下
ip route-static 0.0.0.0 0 Vlan-interface1005 x.x.x.x bfd control-packet preference 80
#
收集了设备的调试信息如下
*Jan 4 03:29:21:639 2011 MSR3620 BFD/7/DEBUG: Send:Ctrl packet, Src:x.x.x.x, Dst:x.x.x.x, Ver:1, Diag:0, Sta:1 P/F/C/A/D/M:0/0/1/0/0/0, Mult:5 LD/RD:98/0, Tx:1000ms, Rx:1000ms, EchoRx:0ms
*Jan 4 03:29:21:640 2011 MSR3620 BFD/7/DEBUG: Session information not match. Discard packet.
*Jan 4 03:29:21:740 2011 MSR3620 BFD/7/DEBUG: Session information not match. Discard packet.
*Jan 4 03:29:22:639 2011 MSR3620 BFD/7/DEBUG: Send:Ctrl packet, Src:x.x.x.x, Dst:x.x.x.x, Ver:1, Diag:0, Sta:1 P/F/C/A/D/M:0/0/1/0/0/0, Mult:5 LD/RD:98/0, Tx:1000ms, Rx:1000ms, EchoRx:0ms
从调试信息可以看出,本端设备正常发送了BFD控制报文,对端发送的BFD控制报文由于没有匹配的会话信息,被设备丢弃了。没有具体调试信息,无法定位具体问题,对交换报文进行抓包,结果如下
从抓包可以看出,对端设备发送过来的BFD控制报的生存时间值是254,从组网来看我司设备与第三方设备是直连设备,发来报文的生存时间应该是255。RFC规定,当配置BFD为直连方式时,TTL需要被设置成255,认为是直连方式,如果TTL值不为最大值,这个BFD报文将会被丢弃,所以之前调试信息会看到BFD报文不匹配会话,直接被丢弃了。
需要第三方设备侧修改BFD报文的生存时间值为最大值255。修改后问题解决,bfd会话正常。
BFD在使用直连方式时生存时间需要被设置成最大值为255。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作