网络拓扑
#配置R1。
R1#configure terminal
R1(config)#router ospf 100
R1(config-ospf)#router-id 1.1.1.1
R1(config-ospf)#network 10.0.0.0 0.0.0.255 area 0
R1(config-ospf)#network 20.0.0.0 0.0.0.255 area 0
R1(config-ospf)#network 200.0.0.0 0.0.0.255 area 0
R1(config-ospf)#exit
#配置R2。
R2#configure terminal
R2(config)#router ospf 100
R2(config-ospf)#router-id 2.2.2.2
R2(config-ospf)#network 20.0.0.0 0.0.0.255 area 0
R2(config-ospf)#network 30.0.0.0 0.0.0.255 area 0
R2(config-ospf)#exit
#配置R3。
R3#configure terminal
R3(config)#router ospf 100
R3(config-ospf)#router-id 3.3.3.3
R3(config-ospf)#network 10.0.0.0 0.0.0.255 area 0
R3(config-ospf)#network 30.0.0.0 0.0.0.255 area 0
R3(config-ospf)#network 201.0.0.0 0.0.0.255 area 0
R3(config-ospf)#exit
步骤3:
配置OSPF与BFD联动。
#配置R1。
R1(config)#interface gigabitethernet0
R1(config-if-gigabitethernet0)#ip ospf bfd
R1(config-if-gigabitethernet0)#exit
#配置R3。
R3(config)#interface gigabitethernet0
R3(config-if-gigabitethernet0)#ip ospf bfd
R3(config-if-gigabitethernet0)#exit
#查看R1的BFD会话。
R1#show bfd session detail
Total session number: 1
OurAddr NeighAddr LD/RD State Holddown interface
10.0.0.1 10.0.0.2 12/19 UP 5000 gigabitethernet0
Type:ipv4 direct
Local State:UP Remote State:UP Up for: 0h:10m:57s Number of times UP:1
Send Interval:1000ms Detection time:5000ms(1000ms*5)
Local Diag:0 Demand mode:0 Poll bit:0
MinTxInt:1000 MinRxInt:1000 Multiplier:5
Remote MinTxInt:1000 Remote MinRxInt:1000 Remote Multiplier:5
Registered protocols:OSPF
可以看到OSPF与BFD联动成功,会话正常建立,检测超时时间为5秒。
#查看R1的路由表。
R1#show ip route
Codes: C - connected, S - static, R - RIP, O - OSPF, OE-OSPF External, M - Management
D - Redirect, E - IRMP, EX - IRMP external, o - SNSP, B - BGP, i-ISIS
Gateway of last resort is not set
C 10.0.0.0/24 is directly connected, 00:20:01, gigabitethernet0
C 20.0.0.0/24 is directly connected, 00:25:22, gigabitethernet1
O 30.0.0.0/24 [110/2] via 20.0.0.2, 00:12:31, gigabitethernet1
[110/2] via 10.0.0.2, 00:11:20, gigabitethernet0
C 127.0.0.0/8 is directly connected, 00:31:09, lo0
C 200.0.0.0/24 is directly connected, 00:20:10, gigabitethernet2
O 201.0.0.0/24 [110/2] via 10.0.0.2, 00:11:30, gigabitethernet0
从路由表中可以看到,路由201.0.0.0/24优选R1和R3之间的线路进行通信。
步骤4:
配置BFD参数。
#配置R1
修改BFD控制报文的最小发送时间间隔和最小接收时间间隔为100毫秒,检测超时倍数为3。
R1(config)#interface gigabitethernet0
R1(config-if-gigabitethernet0)#bfd min-transmit-interval 100
R1(config-if-gigabitethernet0)#bfd min-receive-interval 100
R1(config-if-gigabitethernet0)#bfd multiplier 3
R1(config-if-gigabitethernet0)#exit
#配置R3
修改BFD控制报文的最小发送时间间隔和最小接收时间间隔为100毫秒,检测超时倍数为3。
R3(config)#interface gigabitethernet0
R3(config-if-gigabitethernet0)#bfd min-transmit-interval 100
R3(config-if-gigabitethernet0)#bfd min-receive-interval 100
R3(config-if-gigabitethernet0)#bfd multiplier 3
R3(config-if-gigabitethernet0)#exit
步骤5:
检验结果。
#查看R1的BFD会话。
R1#show bfd session detail
Total session number: 1
OurAddr NeighAddr LD/RD State Holddown interface
10.0.0.1 10.0.0.2 2/3 UP 300 gigabitethernet0
Type:ipv4 direct
Local State:UP Remote State:UP Up for: 0h:11m:27s Number of times UP:1
Send Interval:100ms Detection time:300ms(100ms*3)
Local Diag:0 Demand mode:0 Poll bit:0
MinTxInt:100 MinRxInt:100 Multiplier:3
Remote MinTxInt:100 Remote MinRxInt:100 Remote Multiplier:3
Registered protocols:OSPF
修改BFD参数后,BFD检测超时时间从之前的5秒协商成了300毫秒。
#当R1和R3之间的线路出现故障后,BFD会快速检测到故障并通知OSPF,OSPF将路由切换到R2上进行通信,查看R1的路由表。
R1#show ip route
Codes: C - connected, S - static, R - RIP, O - OSPF, OE-OSPF External, M - Management
D - Redirect, E - IRMP, EX - IRMP external, o - SNSP, B - BGP, i-ISIS
Gateway of last resort is not set
C 10.0.0.0/24 is directly connected, 00:25:00, gigabitethernet0
C 20.0.0.0/24 is directly connected, 00:30:33, gigabitethernet1
O 30.0.0.0/24 [110/2] via 20.0.0.2, 00:17:32, gigabitethernet1
C 127.0.0.0/8 is directly connected, 00:36:10, lo0
C 200.0.0.0/24 is directly connected, 00:25:11, gigabitethernet2
O 201.0.0.0/24 [110/3] via 20.0.0.2, 00:00:10, gigabitethernet1
对比步骤3的路由表可以看到,路由201.0.0.0/24已经切换到R2进行通信