Print

利用TRACK+BFD+EAA解决IS-IS路由无法切换方案

2018-03-10 发表

某局点在使用IS-IS路由协议后,网络管理员在设备互联接口上错误的调

用了包过滤,并在全局将包过滤的默认规则修改为拒绝后整个内网全部中断。


设备配置:

RTA配置:

 packet-filter default deny

#

isis 1

 network-entity 20.0000.0000.0001.00

#

interface LoopBack0

 ip address 7.7.7.7 255.255.255.255

 isis enable 1

#

interface GigabitEthernet0/0

 port link-mode route

ip address 192.168.0.1 255.255.255.0

 isis enable 1

#

interface GigabitEthernet0/2

 port link-mode route

ip address 2.2.2.1 255.255.255.0

 isis enable 1

 isis bfd enable

 packet-filter 3000 inbound

RTB配置:

isis 1

 network-entity 20.0000.0000.0002.00

#

interface LoopBack0

 ip address 9.9.9.9 255.255.255.255

 isis enable 1

#

interface GigabitEthernet0/1

 port link-mode route

ip address 1.1.1.1 255.255.255.0

 isis enable 1

#

interface GigabitEthernet0/2

 port link-mode route

ip address 2.2.2.2 255.255.255.0

 isis enable 1

 isis bfd enable

RTC配置:

isis 1

 network-entity 20.0000.0000.0003.00

#

interface GigabitEthernet0/0

 port link-mode route

ip address 192.168.0.2 255.255.255.0

 isis enable 1

#

interface GigabitEthernet0/1

 port link-mode route

ip address 1.1.1.2 255.255.255.0

 isis enable 1

理论上RTA0/2接口如果发生故障,那么路由会切换至RTC。但是现场路由却没有切换?

当在RTA执行“undo packet-filter default deny”时发现问题。

<H3C>%Mar 10 12:28:49:218 2018 H3C BFD/5/BFD_CHANGE_FSM: Sess[2.2.2.2/2.2.2.1, LD/RD:2049/2049, Interface:GE0/2, SessType:Ctrl, LinkType:INET], Ver:1, Sta: UP->DOWN, Diag: 3 (Neighbor Signaled Session Down)                                      \\此时BFD会话已经检测失败

%Mar 10 12:28:49:220 2018 H3C ISIS/5/ISIS_NBR_CHG: IS-IS 1, Level-1 adjacency 0000.0000.0001 (GigabitEthernet0/2), state changed to DOWN, Reason: BFD session down.                \\随即IS-IS路由信息也down

%Mar 10 12:28:49:223 2018 H3C BFD/5/BFD_CHANGE_SESS: Sess[2.2.2.2/2.2.2.1, LD/RD:2049/0, Interface:GE0/2, SessType:Ctrl, LinkType:INET], Ver:1, Sta: Deleted, Diag: 3 \\此时BFD位置在INET状态

%Mar 10 12:28:49:236 2018 H3C ISIS/5/ISIS_NBR_CHG: IS-IS 1, Level-1 adjacency 0000.0000.0001 (GigabitEthernet0/2), state changed to UP, Reason: 2way-pass.                          \\随即IS-IS路由又恢复了

所以即使数据层面无法通信,那么IS-IS协议状态也不会切换。


通过NQA探测传输链路的状态,通过联动EAA执行相关测试。策略目的之间出问题出问题接口的IS-IS接口优先级修改大,致使路由切换。NQA探测恢复后再定义EAA策略恢复改接口优先级。

具体配置:

nqa entry 1 1

 type icmp-echo

  destination ip 7.7.7.7

  frequency 1000

  probe timeout 100

  reaction 1 checked-element probe-fail threshold-type consecutive 3 action-type trigger-only

#

nqa schedule 1 1 start-time now lifetime forever

#

track 1 nqa entry 1 1 reaction 1

#

rtm cli-policy 1

 event track 1 state negative

 action 0 cli sys

 action 1 cli in g0/2

 action 2 cli isis cost 40 level-2

 user-role network-admin

测试:在RTA执行“packet-filter default deny”,在路由信息中看到路由已经发生了切换。

[H3C]%Mar 10 16:59:48:620 2018 H3C NQA/6/NQA_ENTRY_PROBE_RESULT: Reaction entry 1 of NQA entry admin-name 1 operation-tag 1: probe-fail.

%Mar 10 16:59:48:672 2018 H3C RTM/6/RTM_POLICY: CLI policy 1 is running successfully.