原文:
http://www.h3c.com/cn/d_201708/1018729_30005_0.htm#_Toc488338732
1.6.4 静态路由、Track与NQA联动配置举例
1. 组网需求
Switch A、Switch B、Switch C和Switch D连接了20.1.1.0/24和30.1.1.0/24两个网段,在交换机上配置静态路由以实现两个网段的互通,并配置路由备份以提高网络的可靠性。
Switch A作为20.1.1.0/24网段内主机的缺省网关,在Switch A上存在两条到达30.1.1.0/24网段的静态路由,下一跳分别为Switch B和Switch C。这两条静态路由形成备份,其中:
- 下一跳为Switch B的静态路由优先级高,作为主路由。该路由可达时,Switch A通过Switch B将报文转发到30.1.1.0/24网段。
- 下一跳为Switch C的静态路作为备份路由。
- 在Switch A上通过静态路由、Track与NQA联动,实时判断主路由是否可达。当主路由不可达时,备份路由生效,Switch A通过Switch C将报文转发到30.1.1.0/24网段。
同样地,Switch D作为30.1.1.0/24网段内主机的缺省网关,在Switch D上存在两条到达20.1.1.0/24网段的静态路由,下一跳分别为Switch B和Switch C。这两条静态路由形成备份,其中:
- 下一跳为Switch B的静态路由优先级高,作为主路由。该路由可达时,Switch D通过Switch B将报文转发到20.1.1.0/24网段。
- 下一跳为Switch C的静态路作为备份路由。
- 在Switch D上通过静态路由、Track与NQA联动,实时判断主路由是否可达。当主路由不可达时,备份路由生效,Switch D通过Switch C将报文转发到20.1.1.0/24网段。
2. 组网图
图1-4 静态路由、Track与NQA联动配置组网图
3. 配置步骤
(1) 按照图1-4创建VLAN,在VLAN中加入对应的端口,并配置各VLAN接口的IP地址,具体配置过程略。
(2) 配置Switch A
# 配置到达30.1.1.0/24网段的静态路由:下一跳地址为10.1.1.2,优先级为缺省值60,该路由与Track项1关联。
<SwitchA> system-view
[SwitchA] ip route-static 30.1.1.0 24 10.1.1.2 track 1
# 配置到达30.1.1.0/24网段的静态路由:下一跳地址为10.3.1.3,优先级为80。
[SwitchA] ip route-static 30.1.1.0 24 10.3.1.3 preference 80
# 配置到达10.2.1.4的静态路由:下一跳地址为10.1.1.2。
[SwitchA] ip route-static 10.2.1.4 24 10.1.1.2
# 创建管理员名为admin、操作标签为test的NQA测试组。
[SwitchA] nqa entry admin test
# 配置测试类型为ICMP-echo。
[SwitchA-nqa-admin-test] type icmp-echo
# 配置测试的目的地址为10.2.1.4,下一跳地址为10.1.1.2,以便通过NQA检测Switch A-Switch B-Switch D这条路径的连通性。
[SwitchA-nqa-admin-test-icmp-echo] destination ip 10.2.1.4
[SwitchA-nqa-admin-test-icmp-echo] next-hop ip 10.1.1.2
# 配置测试频率为100ms。
[SwitchA-nqa-admin-test-icmp-echo] frequency 100
# 配置联动项1(连续失败5次触发联动)。
[SwitchA-nqa-admin-test-icmp-echo] reaction 1 checked-element probe-fail threshold-type consecutive 5 action-type trigger-only
[SwitchA-nqa-admin-test-icmp-echo] quit
# 启动探测。
[SwitchA] nqa schedule admin test start-time now lifetime forever
# 配置Track项1,关联NQA测试组(管理员为admin,操作标签为test)的联动项1。
[SwitchA] track 1 nqa entry admin test reaction 1
(3) 配置Switch B
# 配置到达30.1.1.0/24网段的静态路由:下一跳地址为10.2.1.4。
<SwitchB> system-view
[SwitchB] ip route-static 30.1.1.0 24 10.2.1.4
# 配置到达20.1.1.0/24网段的静态路由:下一跳地址为10.1.1.1。
[SwitchB] ip route-static 20.1.1.0 24 10.1.1.1
(4) 配置Switch C
# 配置到达30.1.1.0/24网段的静态路由:下一跳地址为10.4.1.4。
<SwitchC> system-view
[SwitchC] ip route-static 30.1.1.0 24 10.4.1.4
# 配置到达20.1.1.0/24网段的静态路由:下一跳地址为10.3.1.1。
[SwitchC] ip route-static 20.1.1.0 24 10.3.1.1
(5) 配置Switch D
# 配置到达20.1.1.0/24网段的静态路由:下一跳地址为10.2.1.2,优先级为缺省值60,该路由与Track项1关联。
<SwitchD> system-view
[SwitchD] ip route-static 20.1.1.0 24 10.2.1.2 track 1
# 配置到达20.1.1.0/24网段的静态路由:下一跳地址为10.4.1.3,优先级为80。
[SwitchD] ip route-static 20.1.1.0 24 10.4.1.3 preference 80
# 配置到达10.1.1.1的静态路由:下一跳地址为10.2.1.2。
[SwitchD] ip route-static 10.1.1.1 24 10.2.1.2
# 创建管理员名为admin、操作标签为test的NQA测试组。
[SwitchD] nqa entry admin test
# 配置测试类型为ICMP-echo。
[SwitchD-nqa-admin-test] type icmp-echo
# 配置测试的目的地址为10.1.1.1,下一跳地址为10.2.1.2,以便通过NQA检测Switch D-Switch B-Switch A这条路径的连通性。
[SwitchD-nqa-admin-test-icmp-echo] destination ip 10.1.1.1
[SwitchD-nqa-admin-test-icmp-echo] next-hop ip 10.2.1.2
# 配置测试频率为100ms。
[SwitchD-nqa-admin-test-icmp-echo] frequency 100
# 配置联动项1(连续失败5次触发联动)。
[SwitchD-nqa-admin-test-icmp-echo] reaction 1 checked-element probe-fail threshold-type consecutive 5 action-type trigger-only
[SwitchD-nqa-admin-test-icmp-echo] quit
# 启动探测。
[SwitchD] nqa schedule admin test start-time now lifetime forever
# 配置Track项1,关联NQA测试组(管理员为admin,操作标签为test)的联动项1。
[SwitchD] track 1 nqa entry admin test reaction 1
4. 验证配置
# 显示Switch A上Track项的信息。
[SwitchA] display track all
Track ID: 1
State: Positive
Duration: 0 days 0 hours 0 minutes 32 seconds
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
NQA entry: admin test
Reaction: 1
Remote IP/URL: --
Local IP: --
Interface: --
# 显示Switch A的路由表。
[SwitchA] display ip routing-table
Destinations : 10 Routes : 10
Destination/Mask Proto Pre Cost NextHop Interface
10.1.1.0/24 Direct 0 0 10.1.1.1 Vlan2
10.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
10.2.1.0/24 Static 60 0 10.1.1.2 Vlan2
10.3.1.0/24 Direct 0 0 10.3.1.1 Vlan3
10.3.1.1/32 Direct 0 0 127.0.0.1 InLoop0
20.1.1.0/24 Direct 0 0 20.1.1.1 Vlan6
20.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
30.1.1.0/24 Static 60 0 10.1.1.2 Vlan2
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
以上显示信息表示,NQA测试的结果为主路由可达(Track项状态为Positive),Switch A通过Switch B将报文转发到30.1.1.0/24网段。
# 在Switch B上删除VLAN接口2的IP地址。
<SwitchB> system-view
[SwitchB] interface vlan-interface 2
[SwitchB-Vlan-interface2] undo ip address
# 显示Switch A上Track项的信息。
[SwitchA] display track all
Track ID: 1
State: Negative
Duration: 0 days 0 hours 0 minutes 32 seconds
Notification delay: Positive 0, Negative 0 (in seconds)
Tracked object:
NQA entry: admin test
Reaction: 1
Remote IP/URL: --
Local IP: --
Interface: --
# 显示Switch A的路由表。
[SwitchA] display ip routing-table
Destinations : 10 Routes : 10
Destination/Mask Proto Pre Cost NextHop Interface
10.1.1.0/24 Direct 0 0 10.1.1.1 Vlan2
10.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
10.2.1.0/24 Static 60 0 10.1.1.2 Vlan2
10.3.1.0/24 Direct 0 0 10.3.1.1 Vlan3
10.3.1.1/32 Direct 0 0 127.0.0.1 InLoop0
20.1.1.0/24 Direct 0 0 20.1.1.1 Vlan6
20.1.1.1/32 Direct 0 0 127.0.0.1 InLoop0
30.1.1.0/24 Static 80 0 10.3.1.3 Vlan3
127.0.0.0/8 Direct 0 0 127.0.0.1 InLoop0
127.0.0.1/32 Direct 0 0 127.0.0.1 InLoop0
以上显示信息表示,NQA测试的结果为主路由不可达(Track项状态为Negative),则备份路由生效,Switch A通过Switch C将报文转发到30.1.1.0/24网段。
# 主路由出现故障后,20.1.1.0/24网段内的主机仍然可以与30.1.1.0/24网段内的主机通信。
[SwitchA] ping -a 20.1.1.1 30.1.1.1
Ping 30.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 30.1.1.1: bytes=56 Sequence=1 ttl=254 time=2 ms
Reply from 30.1.1.1: bytes=56 Sequence=2 ttl=254 time=1 ms
Reply from 30.1.1.1: bytes=56 Sequence=3 ttl=254 time=1 ms
Reply from 30.1.1.1: bytes=56 Sequence=4 ttl=254 time=2 ms
Reply from 30.1.1.1: bytes=56 Sequence=5 ttl=254 time=1 ms
--- Ping statistics for 30.1.1.1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.00% packet loss
round-trip min/avg/max/std-dev = 1/1/2/1 ms
# Switch D上的显示信息与Switch A类似。主路由出现故障后,30.1.1.0/24网段内的主机仍然可以与20.1.1.0/24网段内的主机通信。
[SwitchB] ping -a 30.1.1.1 20.1.1.1
Ping 20.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 20.1.1.1: bytes=56 Sequence=1 ttl=254 time=2 ms
Reply from 20.1.1.1: bytes=56 Sequence=2 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=3 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=4 ttl=254 time=1 ms
Reply from 20.1.1.1: bytes=56 Sequence=5 ttl=254 time=1 ms
--- Ping statistics for 20.1.1.1 ---
5 packet(s) transmitted, 5 packet(s) received, 0.00% packet loss
round-trip min/avg/max/std-dev = 1/1/2/1 ms