組網需求
如圖1-1所示,RouterA通過RouterB與外部網絡相連,其中RouterA與RouterB之間通過SwitchC互連。要求RouterA能與外部網絡正常通信,並在RouterA和RouterB之間實現毫秒級故障感知,提高收斂速度。
圖1-1 配置IPv4靜態路由與靜態BFD聯動組網圖
配置思路
采用如下思路配置IPv4靜態路由與BFD聯動:
1. 配置各路由器接口的IP地址,實現設備網絡互通。
2. 在RouterA和RouterB上配置BFD會話,實現RouterA和RouterB之間的毫秒級故障感知。
3. 在RouterA上配置通向外部網絡的缺省路由,並將此缺省路由與配置的BFD會話聯動,實現快速檢測鏈路故障,提高路由的收斂速度。
操作步驟
步驟 1 配置各路由器接口IP地址
# 在RouterA上配置接口的IP地址。
[RouterA] interface gigabitethernet 1/0/0
[RouterA-GigabitEthernet1/0/0] ip address 1.1.1.1 24
[RouterA-GigabitEthernet1/0/0] quit
RouterB的配置與RouterA一致(略)。
步驟 2 配置RouterA和RouterB之間的BFD會話
# 在RouterA上配置與RouterB之間的BFD會話。
[RouterA] bfd
[RouterA-bfd] quit
[RouterA] bfd aa bind peer-ip 1.1.1.2
[RouterA-bfd-session-aa] discriminator local 10
[RouterA-bfd-session-aa] discriminator remote 20
[RouterA-bfd-session-aa] commit
[RouterA-bfd-session-aa] quit
# 在RouterB上配置與RouterA之間的BFD Session。
[RouterB] bfd
[RouterB-bfd] quit
[RouterB] bfd bb bind peer-ip 1.1.1.1
[RouterB-bfd-session-bb] discriminator local 20
[RouterB-bfd-session-bb] discriminator remote 10
[RouterB-bfd-session-bb] commit
[RouterB-bfd-session-bb] quit
步驟 3 配置靜態缺省路由並綁定BFD會話
# 在RouterA上配置到外部網絡的靜態缺省路由,並綁定BFD會話aa。
[RouterA] ip route-static 0.0.0.0 0 1.1.1.2 track bfd-session aa
步驟 4 驗證配置結果
# 配置完成后,在RouterA和RouterB上執行display bfd session all命令,可以看到BFD會話已經建立,且狀態為Up。在系統視圖下執行display current-configuration | include bfd命令,可以看到靜態路由已經綁定BFD會話。
以RouterA上的顯示為例。
# 在RouterA上查看IP路由表,靜態路由存在於路由表中
# 查看RouterA的路由表,發現除了直連路由,靜態缺省路由0.0.0.0/0也不存在了。因為靜態缺省路由綁定了BFD會話,當BFD檢測到故障后,就會迅速通知所綁定的靜態路由不可用。如果未配置靜態路由綁定BFD會話,靜態缺省路由0.0.0.0/0不會從路由表刪除,可能會造成流量損失。
配置文件
l RouterA的配置文件
#
sysname RouterA
#
bfd
#
interface GigabitEthernet1/0/0
ip address 1.1.1.1 255.255.255.0
#
bfd aa bind peer-ip 1.1.1.2
discriminator local 10
discriminator remote 20
commit
#
ip route-static 0.0.0.0 0.0.0.0 1.1.1.2 track bfd-session aa
#
return
l RouterB的配置文件
#
sysname RouterB
#
bfd
#
interface GigabitEthernet1/0/0
ip address 1.1.1.2 255.255.255.0
#
interface GigabitEthernet2/0/0
ip address 2.2.2.2 255.255.255.0
#
bfd bb bind peer-ip 1.1.1.1
discriminator local 20
discriminator remote 10
commit
#
return