OpenBFDD的安装与使用

OpenBFDD是一款开源的BFD(双向转发检测)实现,基本上实现了BFD协议里面的功能,可以很方便的拿来参考或者测试。

首先介绍一下BFD,

BFD是BidirectionalForwardingDetection的缩写,它是一个用于检测两个转发点之间故障的网络协议,在RFC5880有详细的描述。BFD是一种双向转发检测机制,可以提供毫秒级的检测,可以实现链路的快速检测,BFD通过与上层路由协议联动,可以实现路由的快速收敛,确保业务的永续性。这里可以下载RFC5800官方文档。

协议的具体理论部分就不介绍了。网上这方面资料比较多,OpenBFDD是RFC5800的一个实现,虽然有些功能并没有完全实现,但是如果是拿来测试或者参考的话,还是很有价值。下面介绍在ubuntu12.04版本安装OpenBFDD运行的方法和一些使用方面的基本命令。

下载源代码
# git clone [email protected]:FuYuanDe/OpenBFDD.git 

安装命令
# cd OpenBFDD
# aclocal																				
# autoconf
# autoheader
# automake --add-missing
# ./configure
# make
# sudo make install

如果执行./configure 中出现如下错误:

checking whether the C++ compiler works... no
configure: error: in `/home/sk/samba/github/OpenBFDD':
configure: error: C++ compiler cannot create executables
See `config.log' for more details

可以执行下面这条命令来解决:

sudo apt-get install gcc
sudo apt-get install g++

安装完成后,就可以配置BFD会话运行了

OpenBFDD由两部分组成,bfdd-beacon, bfdd-control,就像字面意思一样,一个用来控制BFD进程,一个用来控制BFD会话,两者之间通过套接字连接通信。

基本命令如下:

//先启动bfdd-beacon服务,地址用于和bfdd-control通信
bfdd-beacon --control=192.168.199.213:6666

//设置发送时长为1s
bfdd-control --control=192.168.199.213:6666 session new set mintx 1 s
//设置接收时长为1s
bfdd-control --control=192.168.199.213:6666 session new set minrx 1 s

//设置检测次数
bfdd-control --control=192.168.199.213:6666 session new set multi 3

//创建会话
bfdd-control --control=192.168.199.213:6666 connect local 192.168.199.213 remote 192.168.199.123

上面命令执行完成后,就会发起BFD初始会话:

OpenBFDD的安装与使用_第1张图片

更多控制命令可以参照下面这个链接。如有问题,欢迎讨论。

http://dyninc.github.io/OpenBFDD/bfdd-control.8.html

你可能感兴趣的:(BFD协议简介与开发)