BFD的原理和简单实现
BFD(Bidirectional forwarding detection):双向转发检测机制,用于快速检测,监控网络中链路或者ip路由的转发连通状况。经常搭配各种igp和bgp路由一起使用,达到快速收敛的作用。通过建立BFD会话,默认每隔一秒发送BFD检测报文,3倍的超时时间来对网络状况进行全方位的监控。在AR1上配置命令如下;
bfd 全局模式下开启bfd
ospf 1 router-id 1.1.1.1 进入ospf进程,将bfd与ospf联动在一起
bfd all-interfaces enable 设置所有运行ospf的接口都开启bfd
area 0.0.0.0 设置区域0
network 0.0.0.0 255.255.255.255 将所有路由宣告进ospf中
在AR3上配置命令如下:
bfd 全局模式下开启bfd
ospf 1 router-id 3.3.3.3 进入ospf进程,将bfd与ospf联动在一起
bfd all-interfaces enable 设置所有运行ospf的接口都开启bfd
area 0.0.0.0 设置区域0
network 0.0.0.0 255.255.255.255 将所有路由宣告进ospf中
此时通过display bfd session all 可以查看bfd会话情况,然后我们在SW1上手动shutdowne0/0/2接口,可以发现AR3与AR1上的邻居关系马上断开不用等到hello报文的超时时间才断开,因为这时候可以通过bfd的快速检测报文来通过ospf邻居关系已经断开。
上面是动态的bfd联动igp路由协议,可以自动创建bfd会话,但是有时候也需要手动创建bfd会话,手动穿件bfd会话的配置命令如下:
在AR2上进行的配置如下:
ip route-static 0.0.0.0 0.0.0.0 10.1.24.4 添加一条静态路由
bfd 123 bind peer-ip 10.1.24.4 source-ip 10.1.24.2(auto) 手动指定bfd会话的名字,对端ip,本端ip
discriminator local 20 创建bfd本地会话标识符(如果是auto则不用手动创建标识符)
discriminator remote 10 创建bfd远程会话标识符(如果是auto则不用手动创建标识符)
commit 提交bfd配置(一定要)
ip route-static 0.0.0.0 0.0.0.0 10.1.24.4 track bfd-session 123
使用bfd机制对静态路由进行跟踪然后,我们在SW2上手动shutdown e0/0/2接口,可以发现AR2上的静态路由立马消失了,一旦恢复e0/0/2接口,默认路由又出现了bfd还可以结合VRRP来进行主备链路的快速切换,达到网络的快速收敛。
通过命令vrrp vrid 1 track bfd-session session-name 123 reduced 100 可以将vrrp与bfd会话进行联动,一旦bfd检测到链路故障则立马降低master优先级,通告给backup路由器。bfd不能同时和多个路由协议进行联动,只能搭配其中的一个协议,可以是静态路由或者ospf或者vrrp
- 点赞
- 收藏
- 关注作者
评论(0)