组网图形

        

IPv4静态路由与NQA联动简介

  • 网络质量分析NQA(Network Quality Analysis)是一种实时的网络性能探测和统计技术,可以对响应时间、网络抖动、丢包率等网络信息进行统计。NQA能够实时监视网络QoS,在网络发生故障时进行有效的故障诊断和定位。
  • 当网络比较简单,或者交换机不能通过动态路由协议建立到达目的网络的路由时,可以配置静态路由。但是,与动态路由协议不同,静态路由自身没有检测机制,当网络发生故障时,静态路由无法感知,需要由管理员介入,这样无法保证及时进行链路切换,可能造成业务较长时间中断。
  • 部署IPv4静态路由与BFD联动的方案可以适应链路的变化情况,但是IPv4静态路由与BFD联动要求链路两端的设备都支持BFD功能。如果链路两端有设备不支持BFD功能,可以配置IPv4静态路由与NQA联动,当NQA测试例检测到链路故障后,会把与其绑定的静态路由从IP路由表删除,使业务流量切换到无链路故障的路由,避免业务的长时间中断。

组网需求

  • 如图1所示为某公司网络,接入层设备SwitchD和SwtichE通过静态路由与汇聚层设备SwtichB和SwitchC互联,网络设计成冗余备份结构。用户希望实现如下需求:
  • 为静态路由部署检测机制,使静态路由能够感知到链路故障,保证在链路出现故障时能及时进行链路切换,避免造成业务较长时间中断;
  • 正常情况下,要求业务流量使用主用链路SwitchB→SwitchD进行传输;
  • 当主用链路出现故障后,业务流量切换到备用链路SwitchC→SwitchD。

配置思路

  • 1.创建ICMP类型的NQA测试例,用来检测主用链路的故障。
  • 在NQA测试例客户端SwitchB与被测试设备SwitchD之间建立ICMP类型的NQA测试例,检测主用链路SwitchB→SwitchD是否正常。
  • 2.配置静态路由,并绑定NQA测试例。
  • 在汇聚层交换机SwitchB和SwitchC上配置静态路由,其中在SwitchB上配置静态路由与NQA联动,当NQA测试例检测到链路故障时,通知路由管理模块把静态路由从IP路由表中删除。
  • 3.配置动态路由协议。在汇聚层交换机SwitchA、SwitchB和SwitchC上配置动态路由协议,使他们之间可以相互学习路由。
  • 4.OSPF协议引入静态路由,并为主用链路设置较低的开销值,实现主备两条链路冗余备份。
  • 在汇聚层交换机SwitchB和SwitchC上配置OSPF协议引入静态路由,并且为SwitchC引入的静态路由设置较高的开销值。SwitchA从SwitchB和SwitchC学习到通往同一目的地址的路由时,会优先选择开销值较低的链路SwitchB→SwitchD。

操作步骤

  • 1.配置各接口所属的VLAN

  # 配置SwitchA。SwitchB、SwitchC、SwitchD和SwitchE的配置与SwitchA类似,不再赘述。

<HUAWEI> system-view
[HUAWEI] sysname SwitchA
[SwitchA] vlan batch 30 40
[SwitchA] interface gigabitethernet 0/0/1
[SwitchA-GigabitEthernet0/0/1] port link-type trunk
[SwitchA-GigabitEthernet0/0/1] port trunk allow-pass vlan 30
[SwitchA-GigabitEthernet0/0/1] quit
[SwitchA] interface gigabitethernet 0/0/2
[SwitchA-GigabitEthernet0/0/2] port link-type trunk
[SwitchA-GigabitEthernet0/0/2] port trunk allow-pass vlan 40
[SwitchA-GigabitEthernet0/0/2] quit
  • 2.配置各VLANIF接口的IP地址

  # 配置SwitchA。SwitchB、SwitchC、SwitchD和SwitchE的配置与SwitchA类似,不再赘述。

[SwitchA] interface vlanif 30
[SwitchA-Vlanif30] ip address 192.168.3.1 24
[SwitchA-Vlanif30] quit
[SwitchA] interface vlanif 40
[SwitchA-Vlanif40] ip address 192.168.4.1 24
[SwitchA-Vlanif40] quit
  • 3.在SwitchB上配置SwitchB和SwitchD之间的NQA测试例
[SwitchB] nqa test-instance user test   //创建管理者为user,实例名为test的NQA测试例
[SwitchB-nqa-user-test] test-type icmp //配置NQA测试例的测试类型为ICMP
[SwitchB-nqa-user-test] destination-address ipv4 192.168.1.2 //配置NQA测试例的目的地址为192.168.1.2
[SwitchB-nqa-user-test] frequency 20 //配置NQA测试例自动执行测试的时间间隔为20秒
[SwitchB-nqa-user-test] probe-count 2 //配置NQA测试例的一次测试探针数目为2
[SwitchB-nqa-user-test] interval seconds 5 //配置NQA测试例的发送报文的时间间隔为5秒
[SwitchB-nqa-user-test] timeout 4 //配置NQA测试例的一次探测的超时时间为4秒
[SwitchB-nqa-user-test] start now
[SwitchB-nqa-user-test] quit
  • 4.配置静态路由

  # 在SwitchB上配置与NQA测试例联动的静态路由。

[SwitchB] ip route-static 192.168.7.0 255.255.255.0 Vlanif 10 192.168.1.2 track nqa user test

  # 在SwitchC上配置静态路由。

[SwitchC] ip route-static 192.168.7.0 255.255.255.0 Vlanif 60 192.168.6.2
  • 5.在SwitchA、SwitchB和SwitchC上配置动态路由协议。本例选择OSPF动态路由协议。

  # 在SwitchA上配置OSPF协议。

[SwitchA] ospf 1 router-id 10.1.1.1
[SwitchA-ospf-1] area 0.0.0.0
[SwitchA-ospf-1-area-0.0.0.0] network 192.168.3.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0] network 192.168.4.0 0.0.0.255
[SwitchA-ospf-1-area-0.0.0.0] quit
[SwitchA-ospf-1] quit

  # 在SwitchB上配置OSPF协议。

[SwitchB] ospf 1 router-id 10.2.2.2
[SwitchB-ospf-1] area 0.0.0.0
[SwitchB-ospf-1-area-0.0.0.0] network 192.168.3.0 0.0.0.255
[SwitchB-ospf-1-area-0.0.0.0] quit
[SwitchB-ospf-1] quit

  # 在SwitchC上配置OSPF协议。

[SwitchC] ospf 1 router-id 10.3.3.3
[SwitchC-ospf-1] area 0.0.0.0
[SwitchC-ospf-1-area-0.0.0.0] network 192.168.4.0 0.0.0.255
[SwitchC-ospf-1-area-0.0.0.0] quit
[SwitchC-ospf-1] quit
  • 6.在SwitchB和SwitchC上配置OSPF动态路由协议引入静态路由

  # 在SwitchB上配置OSPF动态路由协议引入静态路由,并且把路由开销值设置为10。

[SwitchB] ospf 1
[SwitchB-ospf-1] import-route static cost 10
[SwitchB-ospf-1] quit

  # 在SwitchC上配置OSPF动态路由协议引入静态路由,并且把路由开销值设置为20。

[SwitchC] ospf 1
[SwitchC-ospf-1] import-route static cost 20
[SwitchC-ospf-1] quit
  • 7.查看配置结果

  配置完成后,在系统视图下,在汇聚层交换机SwitchB上执行display current-configuration | include nqa命令,可以看到静态路由已经绑定NQA测试例。执行display nqa results命令,可以看到NQA测试例已经建立。

  # 查看NQA for静态路由的配置。

[SwitchB] display current-configuration | include nqa
ip route-static 192.168.7.0 255.255.255.0 Vlanif10 192.168.1.2 track nqa user test
nqa test-instance user test

  # 查看NQA测试结果。

[SwitchB] display nqa results test-instance user test

 NQA entry(user, test) :testflag is active ,testtype is icmp
1 . Test 288 result The test is finished
Send operation times: 2 Receive response times: 2
Completion:success RTD OverThresholds number: 0
Attempts number:1 Drop operation number:0
Disconnect operation number:0 Operation timeout number:0
System busy operation number:0 Connection fail number:0
Operation sequence errors number:0 RTT Status errors number:0
Destination ip address:192.168.1.2
Min/Max/Average Completion Time: 3/4/3
Sum/Square-Sum Completion Time: 7/25
Last Good Probe Time: 2019-09-09 09:55:38.2
Lost packet ratio: 0 %

  可以看到“Lost packet ratio: 0 %”,这说明链路状态完好。

  # 查看SwitchB的路由表,可以看到静态路由存在于路由表中。

[SwitchB] display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 10 Routes : 10 Destination/Mask Proto Pre Cost Flags NextHop Interface 127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.1.0/24 Direct 0 0 D 192.168.1.1 Vlanif10
192.168.1.1/32 Direct 0 0 D 127.0.0.1 Vlanif10
192.168.3.0/24 Direct 0 0 D 192.168.3.2 Vlanif30
192.168.3.2/32 Direct 0 0 D 127.0.0.1 Vlanif30
192.168.4.0/24 OSPF 10 2 D 192.168.3.1 Vlanif30
192.168.5.0/24 Direct 0 0 D 192.168.5.1 Vlanif50
192.168.5.1/32 Direct 0 0 D 127.0.0.1 Vlanif50
192.168.7.0/24 Static 60 0 D 192.168.1.2 Vlanif10

  # 查看汇聚层交换机SwitchA的路由表。

[SwitchA] display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 7 Routes : 7 Destination/Mask Proto Pre Cost Flags NextHop Interface 127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.3.0/24 Direct 0 0 D 192.168.3.1 Vlanif30
192.168.3.1/32 Direct 0 0 D 127.0.0.1 Vlanif30
192.168.4.0/24 Direct 0 0 D 192.168.4.1 Vlanif40
192.168.4.1/32 Direct 0 0 D 127.0.0.1 Vlanif40
192.168.7.0/24 O_ASE 150 10 D 192.168.3.2 Vlanif30

  可以看到有一条到192.168.7.0/24的路由,下一跳指向192.168.3.2,cost值为10,因此业务流量会优先走链路SwitchB→SwitchD。

  # 关闭SwitchB的GigabitEthernet0/0/3 接口,模拟链路故障。

[SwitchB] interface GigabitEthernet0/0/3
[SwitchB-GigabitEthernet0/0/3] shutdown
[SwitchB-GigabitEthernet0/0/3] quit

  # 查看NQA测试结果。

[SwitchB] display nqa results test-instance user test

 NQA entry(user, test) :testflag is active ,testtype is icmp
1 . Test 309 result The test is finished
Send operation times: 2 Receive response times: 0
Completion:failed RTD OverThresholds number: 0
Attempts number:1 Drop operation number:2
Disconnect operation number:0 Operation timeout number:0
System busy operation number:0 Connection fail number:0
Operation sequence errors number:0 RTT Status errors number:0
Destination ip address:192.168.1.2
Min/Max/Average Completion Time: 0/0/0
Sum/Square-Sum Completion Time: 0/0
Last Good Probe Time: 0000-00-00 00:00:00.0
Lost packet ratio: 100 %

  可以看到“Completion:failed”、“Lost packet ratio: 100 %”,这说明链路发生了故障。

  # 查看SwitchB的路由表,可以看到静态路由消失。

[SwitchB] display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 8 Routes : 8 Destination/Mask Proto Pre Cost Flags NextHop Interface 127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.3.0/24 Direct 0 0 D 192.168.3.2 Vlanif30
192.168.3.2/32 Direct 0 0 D 127.0.0.1 Vlanif30
192.168.4.0/24 OSPF 10 2 D 192.168.3.1 Vlanif30
192.168.5.0/24 Direct 0 0 D 192.168.5.1 Vlanif50
192.168.5.1/32 Direct 0 0 D 127.0.0.1 Vlanif50
192.168.7.0/24 O_ASE 150 20 D 192.168.3.1 Vlanif30

  # 查看SwitchA的路由表。

[SwitchA] display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 7 Routes : 7 Destination/Mask Proto Pre Cost Flags NextHop Interface 127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.3.0/24 Direct 0 0 D 192.168.3.1 Vlanif30
192.168.3.1/32 Direct 0 0 D 127.0.0.1 Vlanif30
192.168.4.0/24 Direct 0 0 D 192.168.4.1 Vlanif40
192.168.4.1/32 Direct 0 0 D 127.0.0.1 Vlanif40
192.168.7.0/24 O_ASE 150 20 D 192.168.4.2 Vlanif40

  因为SwitchB上的NQA测试例与静态路由是联动的,当NQA检测到链路故障后,就迅速通知SwitchB与其绑定的静态路由不可用,SwitchA也不能从SwitchB处学到通往192.168.7.0/24的路由。但是SwitchA可以从SwitchC处学到通往192.168.7.0/24的路由,因此可以看到通往192.168.7.0/24的路由下一跳指向192.168.4.2,cost值为20。业务流量切换到链路SwitchC→SwitchD。

网络拓扑实例13:IPv4静态路由与NQA联动简介的更多相关文章

  1. 路由与交换,cisco路由器配置,静态路由

    网络是一个大型的拓扑结构,在路由表中,最重要的是管理距离和度量值 管理距离 管理距离用来确定路由的优先级.管理距离的范围是0-255之间的整数值.值越低代表优先级越高.0代表最高优先级.并且只有直连路 ...

  2. 静态路由、Track与NQA联动配置举例

    原文: http://www.h3c.com/cn/d_201708/1018729_30005_0.htm#_Toc488338732 1.6.4  静态路由.Track与NQA联动配置举例 1. ...

  3. 路由知识 静态路由 rip eigrp ospf

    第1章 路由选择原理 1.1 几个概念 1.1.1 被动路由协议 用来在路由之间传递用户信息 1.1.2 主动路由协议 用于维护路由器的路由表 R2#show ip route Codes: C - ...

  4. SOHO路由器的静态路由的不同

    网络拓扑如下,其中RA与RB皆为TP-LINK家用路由器 最终在TP-LINK官网的官网上找到这么一段话 静态路由是在路由器中手工设置的固定的路由条目.我司路由器静态路由是基于ICMP重定向原理,与其 ...

  5. 关于linux的添加永久静态路由的static-routes方法

    一:使用 route 命令添加 使用route 命令添加的路由,机器重启或者网卡重启后路由就失效了,方法: //添加到主机的路由 # route add –host 192.168.1.11 dev ...

  6. linux route命令的使用详解 添加永久静态路由 tracert traceroute

    linux route命令的使用详解 添加永久静态路由  tracert  traceroute route -n    Linuxroute  print  Windows traceroute  ...

  7. 静态路由、RIP、SOPF、VLAN间的路由

    常用命令: clear ip router * --清楚全部路由 show ip route --显示路由表 show ip inter b--显示接口信息 show ip protocols  -- ...

  8. CCNA - Part12 - 路由协议 (1) - 静态路由,动态路由 RIP

    路由器 在之前关于路由器的介绍中,我们知道它是网络互联的核心设备,用于连接不同的网络,在网络之间转发 IP 数据报.对于路由器来说,路由表是其内部最为重要的构成组件.当路由器需要转发数据时,就会按照路 ...

  9. H3C路由器配置——静态路由

    一.网络畅通条件及排错思路 1.网络畅通的条件 网络畅通的条件:数据包能去能回,也是我们排除网络故障的理论依据. 2.网络不畅通示列 ①.目标主机不可达 原因分析:可能是数据包没有到达目的地,在中途就 ...

随机推荐

  1. ngx ------ngx_cache_manager_process_cycle

    static void ngx_cache_manager_process_cycle(ngx_cycle_t *cycle, void *data) {----------------------- ...

  2. asp.net core 使用 TestServer 来做集成测试

    asp.net core 使用 TestServer 来做集成测试 Intro 之前我的项目里的集成测试是随机一个端口,每次都真实的启动一个 WebServer,之前也有看到过微软文档上 TestSe ...

  3. 源码分析:Semaphore之信号量

    简介 Semaphore 又名计数信号量,从概念上来讲,信号量初始并维护一定数量的许可证,使用之前先要先获得一个许可,用完之后再释放一个许可.信号量通常用于限制线程的数量来控制访问某些资源,从而达到单 ...

  4. 【转】AWVS扫描小技巧

    1.文件头加 Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html) 可以绕过狗,waf ...

  5. 深度分析:java8的新特性lambda和stream流,看完你学会了吗?

    1. lambda表达式 1.1 什么是lambda 以java为例,可以对一个java变量赋一个值,比如int a = 1,而对于一个方法,一块代码也是赋予给一个变量的,对于这块代码,或者说被赋给变 ...

  6. 给PDF批量添加文本链接

    为了进一步补充说明文件中的一些重要内容,PDF文件的创建者会为一些文本创建链接,方便阅读者访问相关的网站,获取更多的信息. 我们可以通过使用pdfFactory文本链接功能来实现以上需求,另外,我们还 ...

  7. FL Studio带你走进混音的世界

    混音,是把多种音源整合到一个立体音轨或单音音轨中,通俗讲就是对多种声音进行调整后叠加在一起,这样可以让音乐听起来非常有层次感,尤其是在电音制作过程中,混音的质量更是起到了决定性的作用.音乐制作软件FL ...

  8. PHP 统计目录下文件数和文件大小

    1 /** 2 * 统计文件数和文件大小 3 */ 4 private function getFileCacheCount($pathName) 5 { 6 $data = [ 7 'num' =& ...

  9. Linux中influx数据库进程杀不掉,父进程为1

    influx数据库一直杀不掉,父进程为1是个僵尸进程 后来我才发现,influx是运行运行状态 我只需要使用命令,停掉influx即可停止改进程

  10. Codeforces Round #669 (Div. 2) C. Chocolate Bunny 题解(交互)

    题目链接 题目大意 有一个长度为n的全排列,你可以询问2n次,要你经过这个2n次的询问后,求出这个全排列 询问定义为:输入"? i j"输出\(p_{i} mod p_{j}\) ...