9.4 KiB
9.4 KiB
BFD
一、BFD概述
-
Bidirectional Forwarding Detection
双向转发检测
-
BFD技术背景
- 现网中存在的问题
- 不能快速有效的发现网络设备或链路出现的故障
- 不能以毫秒级的速度发现网络问题
- 协议自身的报文检测机制一般都大于1秒
- 解决方案:
- 需要一种专门用于快速检测设备或链路的协议:BFD协议产生
- 现网中存在的问题
-
BFD的作用
- 专门用于发送超小和超快的检测数据包,以毫秒级进行发送,快速检测链路的故障,改善网络性能
- 当发现链路故障时,通知相关的设备和协议进行处理,快速恢复通信,保证网络可靠性
-
BFD的优点
- 对任何介质、任何协议层进行实时且快速的检测
-
BFD会话建立方式
- BFD会话的建立有:静态建立、动态建立两种方式
- 静态建立BFD会话:手工配置BFD会话参数(手工配置:本地标识符和远端标识符)
- 动态建立BFD会话:动态分配本地标识符、自学习远端标识符
- 静态和动态的主要区别:本地标识符和远端标识符配置方式不同
-
BFD检测机制
- 两个设备建立BFD会话,链路两端周期性发送BFD控制报文,如果一端在既定的时间内没有收到BFD控制报文,则认为路径上发生了故障。
-
BFD会话常见参数的缺省配置
参数 缺省值 发送间隔 1000毫秒 接收间隔 1000毫秒 本地检测倍数 3
二、BFD和静态路由联动
-
需求
- 实现PC1 和PC2的互联互通
- 实现BFD和静态路由联动
-
配置步骤
- 配置PC的IP地址,掩码,网关
- 配置路由器的接口IP地址
- 配置静态路由和浮动路由
- 配置BFD
- 配置BFD和静态路由联动
- 验证与测试
-
配置命令
-
第一步:配置PC的接口IP地址
-
第二步:配置路由器的接口IP地址
-
第三步:配置静态路由和浮动路由
-
R1配置浮动路由
[R1]ip route-static 192.168.2.0 24 192.168.12.2 :主路由 [R1]ip route-static 192.168.2.0 24 192.168.13.3 preference 70 :浮动路由
R1去往24.0网段,要做BFD[R1]ip route-static 192.168.24.0 24 192.168.12.2
-
R2配置静态路由
[R2]ip route-static 192.168.1.0 24 192.168.12.1 [R2]ip route-static 192.168.2.0 24 192.168.24.4
-
R3配置静态路由
[R3]ip route-static 192.168.1.0 24 192.168.13.1 [R3]ip route-static 192.168.2.0 24 192.168.34.4
-
R4配置浮动路由
[R4]ip route-static 192.168.1.0 24 192.168.24.2 [R4]ip route-static 192.168.1.0 24 192.168.34.3 preference 70
R4去往12.0网段,要做BFD[R4]ip route-static 192.168.12.0 24 192.168.24.2
-
-
第四步:配置BFD
-
R1的配置
[R1]bfd [R1-bfd]quit [R1]bfd ntd bind peer-ip 192.168.24.4 [R1-bfd-session-ntd]discriminator local 1 [R1-bfd-session-ntd]discriminator remote 4 [R1-bfd-session-ntd]min-tx-interval 10 [R1-bfd-session-ntd]min-rx-interval 10 [R1-bfd-session-ntd]commit [R1-bfd-session-ntd]quit
-
R4的配置
[R4]bfd [R4-bfd]quit [R4]bfd ntd bind peer-ip 192.168.12.1 [R4-bfd-session-ntd]discriminator local 4 [R4-bfd-session-ntd]discriminator remote 1 [R4-bfd-session-ntd]min-tx-interval 10 [R4-bfd-session-ntd]min-rx-interval 10 [R4-bfd-session-ntd]commit
-
-
第五步:配置BFD和静态路由联动
-
R1
[R1]ip route-static 192.168.2.0 24 192.168.12.2 track bfd-session ntd2308
-
-
第六步:验证与测试
-
R1
<R1>display bfd session all
将R2和R4之间的链路断开,验证浮动路由是否切换
确保PC1和PC2能够正常通信,不因链路中断,而导致网络不可达
-
-
三、VRRP和BFD联动实验
-
需求
- 部署VRRP,让SW1成为备份组10的-Master设备(vlan10的主网关)
- 让SW2成为备份组10的-Backup设备(vlan10的备份网关)
- 部署VRRP和BFD联动可以解决的问题:
- 在VRRP中当SW1-主网关,出现故障的时候,备份网关SW2需要等待3秒后,才可以升级为新的主网关,承担流量转发任务。
- 3秒对有些企业网络来说是不可以接受的,我们需要实现VRRP主备设备更加快速的切换(毫秒级故障切换)
-
解决方案
- 在运行VRRP网络设备上(SW1/SW2)运行BFD协议
- 在SW1和SW2之间建立BFD会话,通过BFD协议快速检测和感知设备或链路故障
- 在SW2中配置VRRP和BFD联动,当SW1-主网关出现故障的时候,BFD会话会Down
- 此时BFD协议会通知备份网关SW2,立即将VRRP优先级调高,已实现SW2快速成为主网关
-
配置步骤
- 第一步:配置PC的IP地址,掩码,网关
- 第二步:配置sw3交换机的vlan,端口加vlan 配trunk
- 第三步:SW1和SW2配置vrrp-热备
- 创建vlan
- 配置vlanif接口地址
- 配置vrrp 备份组,配置虚拟IP
- 配置优先级
- 交换机互联接口配置trunk
- 第四步:配置SW1和SW2的BFD会话
- 开启BFD功能
- 创建BFD会话
- 配置本地标识符
- 配置远端标识符
- 提交
- 第五步:配置VRRP和BFD联动
- 配置VRRP和BFD联动,跟踪BFD会话,一旦发现BFD会话down掉,SW2的VRRP的优先级会在原来的基础上增加60,让SW2快速的成为Master设备
- 第六步:模拟故障,验证BFD
-
配置命令
-
第一步:配置PC的IP地址,掩码,网关
-
第二步:配置sw3交换机的vlan,端口加vlan 配trunk
-
SW3配置
[SW3]vlan 10 [SW3-vlan10]quit [SW3]port-group group-member g0/0/1 g0/0/2 [SW3-port-group]port link-type access [SW3-port-group]port default vlan 10 [SW3-port-group]quit [SW3]port-group group-member g0/0/3 g0/0/4 [SW3-port-group]port link-type trunk [SW3-port-group]port trunk allow-pass vlan all
-
-
第三步:SW1和SW2配置vrrp-热备
-
SW1配置
[SW1]vlan 10 [SW1-vlan10]quit [SW1]int g0/0/1 [SW1-G0/0/1]port link-type trunk [SW1-G0/0/1]port trunk allow-pass vlan all [SW1-G0/0/1]quit [SW1]int vlanif 10 [SW1-Vlanif10]ip address 192.168.10.251 24 [SW1-Vlanif10]vrrp vrid 10 virtual-ip 192.168.10.254 [SW1-Vlanif10]vrrp vrid 10 priority 130
-
SW2配置
[SW2]vlan 10 [SW2-vlan10]quit [SW2]int g0/0/1 [SW2-G0/0/1]port link-type trunk [SW2-G0/0/1]port trunk allow-pass vlan all [SW2-G0/0/1]quit [SW2]int vlanif 10 [SW2-Vlanif10]ip address 192.168.10.252 24 [SW2-Vlanif10]vrrp vrid 10 virtual-ip 192.168.10.254
-
-
第四步:配置SW1和SW2的BFD会话
-
SW1配置
[SW1]bfd //开启BFD功能 [SW1-bfd]quit //退出 [SW1]bfd tedu bind peer-ip 192.168.10.252 //在系统视图下创建BFD会话,绑定对端IP地址 [SW1-bfd-session-tedu]discriminator local 1 //配置本地标识符 [SW1-bfd-session-tedu]discriminator remote 2 //配置远端标识符 [SW1-bfd-session-tedu]min-rx-interval 100 //配置接收报文间隔时间(100毫秒) [SW1-bfd-session-tedu]min-tx-interval 100 //配置发送报文间隔时间(100毫秒) [SW1-bfd-session-tedu]commit //提交
-
SW2
[SW2]bfd //开启BFD功能 [SW2-bfd]quit [SW2]bfd tedu bind peer-ip 192.168.10.251 //创建BFD会话,绑定对端IP地址 [SW2-bfd-session-tedu]discriminator local 2 //本地标识符为2 [SW2-bfd-session-tedu]discriminator remote 1 //远端标识符为1 [SW2-bfd-session-tedu]min-rx-interval 100 //接受报文间隔时间100毫秒 [SW2-bfd-session-tedu]min-tx-interval 100 //发送报文间隔时间100毫秒 [SW2-bfd-session-tedu]commit //提交
-
-
第五步:在SW2上配置VRRP和BFD联动
[SW2]int vlanif 10 [SW2-Vlanif10]vrrp vrid 10 track bfd-session 2 increased 60
配置VRRP和BFD联动,跟踪BFD会话,一旦发现BFD会话down掉,就让SW2的VRRP的优先级在原来的基础上增加60,让SW2快速的成为Master设备
-
第六步:模拟SW1故障,在SW2中验证BFD和VRRP联动
-
SW2
[SW2]display vrrp Vlanif10 | Virtual Router 10 State : Master Virtual IP : 192.168.10.254 Master IP : 192.168.10.252 PriorityRun : 160 PriorityConfig : 100 MasterPriority : 160 Preempt : YES Delay Time : 0 s TimerRun : 1 s TimerConfig : 1 s Auth type : NONE Virtual MAC : 0000-5e00-010a Check TTL : YES Config type : normal-vrrp Track BFD : 2 Priority increased : 60 BFD-session state : DOWN // 重点看这条 Create time : 2022-12-29 17:32:15 UTC-08:00 Last change time : 2022-12-29 17:50:00 UTC-08:00
-
-