交换机策略路由、Track与NQA联动配置总结

发布时间 2023-05-29 09:09:34作者: 剩余价值

一、  组网需求:

Switch A、Switch B、Switch C两两互联,在Switch A上配置策略路由,使不同的业务流量报文转发到不同的网段。

Switch A作为10.1.1.0/24网段内主机的缺省网关,配置20.1.1.0/24网段的静态路由指向Switch B,并配置静态路由使Switch A、Switch B、Switch C所有直连网段能够互通。 通过配置策略路由,对于来自10.1.1.0/24网段的ICMP流量,优先通过Switch C进行转发;对于该网段的其他流量,则通过Switch B进行转发。

如果Switch B与Switch C之间的链路故障,则策略路由将会导致ICMP流量无法完成转发。在Switch A上通过策略路由、Track与NQA联动,实时探测Switch B与Switch C的直连网段路由是否可达。如果路由不可达,则NQA能够快速地检测到路由故障,使Switch A上策略路由失效,ICMP流量将查找路由表路由通过Switch B进行转发。

同样地,Switch B作为20.1.1.0/24网段内主机的缺省网关,配置10.1.1.0/24网段的静态路由指向Switch A。对于来自20.1.1.0/24网段的ICMP流量,优先通过Switch C进行转发;对于该网段的其他流量,则通过Switch B进行转发。

在Switch B上通过策略路由、Track与NQA联动,实时探测Switch A与Switch C的直连网段路由是否可达。如果Switch A与Switch C之间的链路故障,此时路由不可达,则NQA能够快速地检测到路由故障,使Switch B上策略路由失效,ICMP流量将查找路由表路由通过Switch A进行转发。

二、  组网图:

 

三、  配置步骤:

按照组网图创建VLAN,在VLAN中加入对应的端口,并配置各VLAN接口的IP地址,具体配置过程略。

1. 配置Switch A

1.1 配置到达非直连网段的静态路由。

1)配置到达20.1.1.0/24网段的静态路由,下一跳地址为12.1.1.2。

system-view
[SwitchA] ip route-static 20.1.1.0 24 12.1.1.2

2)配置到达23.1.1.0/30网段的静态路由,下一跳地址为13.1.1.2。

[SwitchA] ip route-static 23.1.1.0 30 13.1.1.2

1.2 配置TRACK项

1)创建管理员名为admin、操作标签为test的NQA测试组。

[SwitchA] nqa entry admin test

2)配置测试类型为ICMP-echo。

[SwitchA-nqa-admin-test] type icmp-echo

3)配置测试的目的地址为23.1.1.1,下一跳地址为13.1.1.2,以便通过NQA检测Switch A-Switch C-Switch B这条路径的连通性。

 [SwitchA-nqa-admin-test-icmp-echo] destination ip 23.1.1.1
 [SwitchA-nqa-admin-test-icmp-echo] next-hop 13.1.1.2

4)配置测试频率为1000ms。

 [SwitchA-nqa-admin-test-icmp-echo] frequency 1000

5)配置联动项1(连续失败3次触发联动)。

[SwitchA-nqa-admin-test-icmp-echo] reaction 1 checked-element probe-fail threshold-type consecutive 3 action-type trigger-only
[SwitchA-nqa-admin-test-icmp-echo] quit

6)启动探测。

[SwitchA] nqa schedule admin test start-time now lifetime forever

7)配置Track项1,关联NQA测试组(管理员为admin,操作标签为test)的联动项1。

[SwitchA] track 1 nqa entry admin test reaction 1

1.3 配置关于ICMP流量报文的策略路由,并且与Track项联动。

1)定义访问控制列表ACL 3001,用来匹配ICMP报文。

[SwitchA] acl number 3001
[SwitchA-acl-adv-3001] rule permit icmp
[SwitchA-acl-adv-3001] quit

2)定义5号节点,指定所有ICMP报文的下一跳为13.1.1.2。

[SwitchA] policy-based-route ICMP_PBR permit node 5
[SwitchA-pbr-ICMP_PBR-5] if-match acl 3001
[SwitchA-pbr-ICMP_PBR-5] apply ip-address next-hop 13.1.1.2 track 1
[SwitchA-pbr-ICMP_PBR-5] quit

3)在接口Vlan-interface10上应用转发策略路由,处理此接口接收的报文。

[SwitchA] interface vlan-interface 10
[SwitchA-Vlan-interface10] ip policy-based-route ICMP_PBR
[SwitchA-Vlan-interface10] quit

2. 配置Switch B

2.1 配置到达非直连网段的静态路由。

1) 配置到达10.1.1.0/24网段的静态路由,下一跳地址为12.1.1.1。

system-view
[SwitchB] ip route-static 10.1.1.0 24 12.1.1.1

2) 配置到达13.1.1.0/30网段的静态路由,下一跳地址为23.1.1.2。

[SwitchB] ip route-static 13.1.1.0 30 23.1.1.2

2.2 配置TRACK项

1)创建管理员名为admin、操作标签为test的NQA测试组。

[SwitchB] nqa entry admin test

2)配置测试类型为ICMP-echo。

[SwitchB-nqa-admin-test] type icmp-echo

3)配置测试的目的地址为13.1.1.1,下一跳地址为23.1.1.2,以便通过NQA检测Switch B-Switch C-Switch A这条路径的连通性。

 [SwitchB-nqa-admin-test-icmp-echo] destination ip 13.1.1.1
 [SwitchB-nqa-admin-test-icmp-echo] next-hop 23.1.1.2

4)配置测试频率为1000ms。

 [SwitchB-nqa-admin-test-icmp-echo] frequency 1000

5)配置联动项1(连续失败3次触发联动)。

[SwitchB-nqa-admin-test-icmp-echo] reaction 1 checked-element probe-fail threshold-type consecutive 3 action-type trigger-only
[SwitchB-nqa-admin-test-icmp-echo] quit

6)启动探测。

[SwitchB] nqa schedule admin test start-time now lifetime forever

7)配置Track项1,关联NQA测试组(管理员为admin,操作标签为test)的联动项1。

[SwitchB] track 1 nqa entry admin test reaction 1

2.3 配置关于ICMP流量报文的策略路由,并且与Track项联动。

1)定义访问控制列表ACL 3001,用来匹配ICMP报文。

[SwitchB] acl number 3001
[SwitchB-acl-adv-3001] rule permit icmp
[SwitchB-acl-adv-3001] quit

2)定义5号节点,指定所有ICMP报文的下一跳为23.1.1.2。

[SwitchB] policy-based-route ICMP_PBR permit node 5
[SwitchB-pbr-ICMP_PBR-5] if-match acl 3001
[SwitchB-pbr-ICMP_PBR-5] apply ip-address next-hop 23.1.1.2 track 1
[SwitchB-pbr-ICMP_PBR-5] quit

3)在接口Vlan-interface20上应用转发策略路由,处理此接口接收的报文。

[SwitchB] interface vlan-interface 20
[SwitchB-Vlan-interface20] ip policy-based-route ICMP_PBR
[SwitchB-Vlan-interface20] quit

3. 配置Switch C

3.1 配置到达非直连网段的静态路由。

1)配置到达10.1.1.0/24网段的静态路由,下一跳地址为13.1.1.1。

system-view
[SwitchC] ip route-static 10.1.1.0 24 13.1.1.1

2)配置到达20.1.1.0/24网段的静态路由,下一跳地址为23.1.1.1。

[SwitchC] ip route-static 20.1.1.0 24 23.1.1.1

4.验证配置结果

4.1 验证策略路由是否生效。

在Switch B上做流量统计,对ICMP流量报文和其他报文(以Telnet报文为例)做流量统计,验证策略路由是否生效。

1)  配置流量统计QoS

定义ACL 3005,匹配ICMP流量报文:

acl number 3005
 rule 0 permit icmp source 10.1.1.0 0.0.0.255 destination 20.1.1.0 0.0.0.255

定义ACL 3006,匹配TCP流量报文:

acl number 3006
 rule 0 permit tcp source 10.1.1.0 0.0.0.255 destination 20.1.1.0 0.0.0.255

创建流量统计QoS:

traffic classifier ACC_1 operator and
 if-match acl 3005
#
traffic classifier ACC_2 operator and
 if-match acl 3006
#
traffic behavior ACC
 accounting packet
#
qos policy ACC
 classifier ACC_1 behavior ACC
 classifier ACC_2 behavior ACC
#

将QoS分别应用在连接Switch A的G1/0/2和连接Switch C的G1/0/1接口的入方向:

interface GigabitEthernet1/0/1
 qos apply policy ACC inbound
interface GigabitEthernet1/0/2
 qos apply policy ACC inbound

查看流量统计结果

从10.1.1.0/24网段的主机上Ping/Telnet 20.1.1.0/24网段的主机后,查看流量统计结果:

[SwitchB]display qos policy interface GigabitEthernet 1/0/2
  Interface: GigabitEthernet1/0/2
  Direction: Inbound
  Policy: ACC
   Classifier: ACC_1
     Operator: AND
     Rule(s) : If-match acl 3005
     Behavior: ACC
      Accounting Enable:
        0 (Packets)
   Classifier: ACC_2
     Operator: AND
     Rule(s) : If-match acl 3006
     Behavior: ACC
      Accounting Enable:
        32 (Packets)
[SwitchB]display qos policy interface GigabitEthernet 1/0/1
  Interface: GigabitEthernet1/0/1
  Direction: Inbound
  Policy: ACC
   Classifier: ACC_1
     Operator: AND
     Rule(s) : If-match acl 3005
     Behavior: ACC
      Accounting Enable:
        5 (Packets)
   Classifier: ACC_2
     Operator: AND
     Rule(s) : If-match acl 3006
     Behavior: ACC
      Accounting Enable:
        0 (Packets)

由于Telnet使用的是TCP协议,ping使用的是ICMP协议,所以由以上结果可证明:Switch A转发的ICMP报文的下一跳为13.1.1.2,策略路由生效。

4.2 验证策略路由与Track项联动是否生效。

断开Switch B与Switch C的链路后,查看Switch A上Track项状态:

display track 1
Track ID: 1
  Status: Negative
  Duration: 0 days 0 hours 1 minutes 35 seconds
  Notification delay: Positive 0, Negative 0 (in seconds)
  Reference object:
    NQA entry: admin test
    Reaction: 1
清空Switch B的流量统计计数,重新进行Ping/Telnet操作,再次查看Switch B的流量统计结果:

[SwitchB]display qos policy interface GigabitEthernet 1/0/2
  Interface: GigabitEthernet1/0/2
  Direction: Inbound
  Policy: ACC
   Classifier: ACC_1
     Operator: AND
     Rule(s) : If-match acl 3005
     Behavior: ACC
      Accounting Enable:
        5 (Packets)
   Classifier: ACC_2
     Operator: AND
     Rule(s) : If-match acl 3006
     Behavior: ACC
      Accounting Enable:
        54 (Packets)

说明Track项已经检测到探测的网段不可达,并且成功将策略路由置为无效。

以上验证步骤是诊断流量从10.1.1.0/24网段到20.1.1.0/24网段的情况,对于反向的流量验证与上面情况类似。

四、  配置关键点: