当前位置: 首页 > news >正文

网关冗余技术VRRP的原理与配置

网关冗余技术VRRP

1、VRRP概述与原理

VRRP技术背景:单网关面临的问题

1753800714719

VRRP概述

  • 通过把几台路由设备联合组成一台虚拟的“路由设备”,使用一定的机制保证当主设备出现故障时,及时将业务切换到备份路由设备,从而保持通讯的连续性和可靠性。

1753800781246

VRRP的基本概念

VRRP路由器:运行VRRP协议的路由器,如R1和R2。VRID:一个VRRP组(VRRP Group)由多台协同工作
的路由器(的接口)组成,使用相同的VRID(Virtual Router ldentifier,虚拟路由器标识符)进行标识。属于
同一个VRRP组的路由器之间交互VRRP协议报文并产生一台虚拟“路由器”。一个VRRP组中只能出现一台Master路由器。

虚拟路由器:VRRP为每一个组抽象出一台虚拟“路由器(Virtual Router),该路由器并非真实存在的物理设备
而是由VRRP虚拟出来的逻辑设备。一个VRRP组只会产生一台虚拟路由器。

虚拟IP地址及虚拟MAC地址:虚拟路由器拥有自已的IP地址以及MAC地址,其中IP地址由网络管理员在配置VRRP时指定,一台虚拟路由器可以有一个或多个IP地址通常情况下用户使用该地址作为网关地址。而虚拟MAC地址的格式是"0000-5e00-01xx”,其中xx为VRID。

Master路由器:"Master路由器”在一个VRRP组中承担报文转发任务。在每一个VRRP组中,只有Master路由器才会响应针对虚拟IP地址的ARPRequest。Master路由器会以一定的时间间隔周期性地发送VRRP报文,以便通知同一个VRRP组中的Backup路由器关于自己的存活情况。

Backup路由器:也被称为备份路由器。Backup路由器将会实时侦听Master路由器发送出来的VRRP报文,它随时准备接替Master路由器的工作。

Priority:优先级值是选举Master路由器和Backup路由器的依据,优先级取值范围0-255,值越大越优先,值相等则比较接口IP地址大小,大者优先。

1753800901281

2、VRRP典型应用

VRRP负载分担

  • 通过创建多个虚拟路由器,每个物理路由器在不同的VRRP组中扮演不同的角色,Virtual IP作为不同的内网网关地址可以实现流量转发负载分担。

1753801118659

VRRP与MSTP结合应用

1753801227030

MSTP属于二层,现在被堆叠技术替代。

VRRP属于三层

VRRP监视上行端口

1753801643652

VRRP与BFD联动

  • 通过配置VRRP与BFD联动,当Backup设备通过BFD感知故障发生之后,不再等待master计时器超时而会在BFD检测周期结束后立即切换VRRP状态,此时可以实现毫秒级的主备切换。

1753801812984

3、VRRP基本配置

1.创建VRRP备份组并给备份组配置虚拟IP地址
[interface-GigabitEtherneto/o/o] vrp vrid virtual-router-id virtual-ip virtual-address
注意:各备份组之间的虚拟IP地址不能重复;同属一个备份组的设备接口需使用相同的VRID。

2.配置路由器在备份组中的优先级
[interface-GigabitEthernetO/o/o] vrrp vrid virtual-router-id priority priority-value
注意:通常情况下,Master设备的优先级应高于Backup设备。

3.配置备份组中设备的抢占延迟时间
[interface-GigabitEtherneto/o/o] vrrp vrid virtual-router-id preempt-mode timer delay delay-value

4.配置VRRP备份组中设备采用非抢占模式
[interface-GigabitEtherneto/o/o] vrrp vrid virtual-router-id preempt-mode disable
缺省情况下,抢占模式已被激活。

5.配置VRRP备份组监视接口
[interface-GigabitEtherneto/o/o]vrrpvridvirtual-router-id track interface interface-type interface-number[increased value-increased | reduced value-decreased ]
可配置设备当检测到上行接口或链路出现故障时,增加或者减少自身优先级,IP地址拥有者和Eth-trunk成员口不允许配置VRRP监视功能。

6.配置VRRP备份组联动普通BFD会话
[interface-GigabitEtherneto/o/o] vrrp vrid virtual-router-id track bfd-session(bfd-session-id| session-name bfd-configure-name }[ increased value-increased | reduced value-reduced ]
如果选择参数session-namebfd-configure-name,可以绑定静态BFD会话或者标识符自协商的静态BFD会话。如果选择参数bfd-session-id,只能绑定静态BFD会话。

VRRP基础配置实例

1753802091814

1753802249327

4、VRRP实验配置

拓扑图:

1753953189836

配置步骤:

1、配置PC1的IP地址192.168.10.1
2、配置接入交换机acsw

下行接口配置成access,上行接口配置成trunk。

<Huawei>system-view 
[Huawei]sysname acsw
[acsw]undo info-center enable 
[acsw]vlan 100
[acsw-vlan100]int g0/0/1
[acsw-GigabitEthernet0/0/1]port link-type access 
[acsw-GigabitEthernet0/0/1]port default vlan 100
[acsw-GigabitEthernet0/0/1]q[acsw]interface GigabitEthernet 0/0/2
[acsw-GigabitEthernet0/0/2]port link-type trunk 
[acsw-GigabitEthernet0/0/2]port trunk allow-pass vlan all[acsw-GigabitEthernet0/0/2]int g0/0/3
[acsw-GigabitEthernet0/0/3]port link-type trunk 
[acsw-GigabitEthernet0/0/3]port trunk allow-pass vlan all

上述配置VLAN 100错误,需要更改为VLAN 10

<acsw>system-view 
[acsw]vlan 10
[acsw-vlan10]q
[acsw]undo vlan 100
[acsw]interface GigabitEthernet 0/0/1
[acsw-GigabitEthernet0/0/1]port default vlan 10
[acsw-GigabitEthernet0/0/1]q
<acsw>save
3、配置核心交换机coresw1
配置接口类型:
<Huawei>system-view 
[Huawei]undo info-center enable 
[Huawei]interface GigabitEthernet 0/0/1
[Huawei-GigabitEthernet0/0/1]port link-type trunk 
[Huawei-GigabitEthernet0/0/1]port trunk allow-pass vlan all创建VLAN
[Huawei]vlan 10
[Huawei-vlan10]q
[Huawei]vlan 100
[Huawei-vlan100]q
将交换机重命名
[Huawei]sysname coresw1
[coresw1]将接口放到相应的VLAN中
[coresw1]interface GigabitEthernet 0/0/3
[coresw1-GigabitEthernet0/0/3]port link-type access 
[coresw1-GigabitEthernet0/0/3]port default vlan 100
[coresw1-GigabitEthernet0/0/3]q
[coresw1]配置三层接口
[coresw1]interface Vlanif 10
[coresw1-Vlanif10]ip add 192.168.10.252 24
[coresw1-Vlanif10]q
[coresw1]interface Vlanif 100
[coresw1-Vlanif100]ip address 192.168.100.1 30
[coresw1-Vlanif100]q
4、配置核心交换机coresw2
配置接口类型:
<Huawei>
<Huawei>sys
[Huawei]sysname coresw2
[coresw2]undo info-center enable 
[coresw2]int GigabitEthernet 0/0/1
[coresw2-GigabitEthernet0/0/1]port link-type trunk 
[coresw2-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[coresw2-GigabitEthernet0/0/1]q
[coresw2]interface GigabitEthernet 0/0/2
[coresw2-GigabitEthernet0/0/2]port link-type trunk 
[coresw2-GigabitEthernet0/0/2]port trunk allow-pass vlan all
[coresw2-GigabitEthernet0/0/2]q创建vlan
[coresw2]vlan 10
[coresw2-vlan10]vlan 200
[coresw2-vlan200]q配置三层接口
[coresw2]interface GigabitEthernet 0/0/3
[coresw2-GigabitEthernet0/0/3]port link-type access 
[coresw2-GigabitEthernet0/0/3]port default vlan 200
[coresw2-GigabitEthernet0/0/3]q[coresw2]interface Vlanif 10
[coresw2-Vlanif10]ip address 192.168.10.253 24
[coresw2-Vlanif10]int vlan 200
[coresw2-Vlanif200]ip address 192.168.200.1 30
[coresw2-Vlanif200]q
5、配置VRRP

上述测试一下是否配置正确,互相ping一下,全部都通之后代表完成基础配置。

下面配置VRRP

在coresw1中配置
<coresw1>sys
[coresw1]interface Vlanif 10
[coresw1-Vlanif10]vrrp vrid 10 virtual-ip 192.168.10.254
[coresw1-Vlanif10]vrrp vrid 10 priority 120
[coresw1-Vlanif10]vrrp vrid 10 preempt-mode timer delay 20
[coresw1-Vlanif10]q查看VRRP的配置情况
[coresw1]display vrrpVlanif10 | Virtual Router 10State : MasterVirtual IP : 192.168.10.254Master IP : 192.168.10.252PriorityRun : 120PriorityConfig : 120MasterPriority : 120Preempt : YES   Delay Time : 20 sTimerRun : 1 sTimerConfig : 1 sAuth type : NONEVirtual MAC : 0000-5e00-010aCheck TTL : YESConfig type : normal-vrrpCreate time : 2025-07-31 16:28:41 UTC-08:00Last change time : 2025-07-31 16:28:45 UTC-08:00
在coresw2中配置
<coresw2>sys
[coresw2]interface Vlanif 10
[coresw2-Vlanif10]vrrp vrid 10 virtual-ip 192.168.10.254
[coresw2-Vlanif10]vrrp vrid 10 priority 100
[coresw2-Vlanif10]q查看VRRP的配置情况
[coresw2]display vrrpVlanif10 | Virtual Router 10State : BackupVirtual IP : 192.168.10.254Master IP : 192.168.10.252PriorityRun : 100PriorityConfig : 100MasterPriority : 120Preempt : YES   Delay Time : 0 sTimerRun : 1 sTimerConfig : 1 sAuth type : NONEVirtual MAC : 0000-5e00-010aCheck TTL : YESConfig type : normal-vrrpCreate time : 2025-07-31 16:32:10 UTC-08:00Last change time : 2025-07-31 16:32:10 UTC-08:00
在PC1中测试
PC>ping 192.168.10.254Ping 192.168.10.254: 32 data bytes, Press Ctrl_C to break
From 192.168.10.254: bytes=32 seq=1 ttl=255 time=31 ms
From 192.168.10.254: bytes=32 seq=2 ttl=255 time=32 ms
From 192.168.10.254: bytes=32 seq=3 ttl=255 time=31 ms
From 192.168.10.254: bytes=32 seq=4 ttl=255 time=62 ms
From 192.168.10.254: bytes=32 seq=5 ttl=255 time=63 ms--- 192.168.10.254 ping statistics ---5 packet(s) transmitted5 packet(s) received0.00% packet lossround-trip min/avg/max = 31/43/63 ms

到这里表示VRRP内部已经配置完成,接下来配置VRRP访问互联网部分

6、VRRP访问互联网配置
在AR1中配置
<Huawei>sys
[Huawei]sysname AR1
[AR1]interface g0/0/0
[AR1-GigabitEthernet0/0/0]ip address 192.168.100.2 30
[AR1-GigabitEthernet0/0/0]int g0/0/1
[AR1-GigabitEthernet0/0/1]ip address 192.168.200.2 30
[AR1-GigabitEthernet0/0/1]int g0/0/2
[AR1-GigabitEthernet0/0/2]ip address 100.1.1.2 30
[AR1-GigabitEthernet0/0/2]q
配置互联网
<Huawei>sys
[Huawei]sysname Internet
[Internet]int g0/0/0
[Internet-GigabitEthernet0/0/0]ip add 100.1.1.1 30
[Internet-GigabitEthernet0/0/0]q

完成上述配置,PC1是ping不通互联网的,为什么?

查一下coresw1的IP路由表,没有100.1.1.0这个网段的路由表。

因为不在同一个网段中,需要将数据包转发给网关,在coresw1处配置静态路由。

在coresw1中配置静态路由
[coresw1]ip route-static 0.0.0.0 0 192.168.100.2
在coresw2中配置静态路由
[coresw2]ip route-static 0.0.0.0 0 192.168.200.2

还是ping不通互联网,分析一下:

流量已经到达网关,网关将数据包传递给路由器AR1,通过抓包,数据已经传递到互联网,但是没有回程的数据。

需要在互联网路由器中配置静态路由。

[Internet]ip route-static 192.168.10.0 24 100.1.1.2

还是不通?原因如下:

ping request 源地址:192.168.10.1 目的:100.1.1.1

ping reply 源地址:100.1.1.1 目的:192.168.10.1

流量回传到AR1时,找不到192.168.10.1这个地址,所以还需要在出口路由器上配置静态路由

[AR1]ip route-static 192.168.10.0 24 192.168.100.1
[AR1]ip route-static 192.168.10.0 24 192.168.200.1

经过上述路由之后,

PC>ping 100.1.1.1Ping 100.1.1.1: 32 data bytes, Press Ctrl_C to break
From 100.1.1.1: bytes=32 seq=1 ttl=253 time=79 ms
From 100.1.1.1: bytes=32 seq=2 ttl=253 time=46 ms
From 100.1.1.1: bytes=32 seq=3 ttl=253 time=47 ms
From 100.1.1.1: bytes=32 seq=4 ttl=253 time=78 ms
From 100.1.1.1: bytes=32 seq=5 ttl=253 time=63 ms--- 100.1.1.1 ping statistics ---5 packet(s) transmitted5 packet(s) received0.00% packet lossround-trip min/avg/max = 46/62/79 ms

追踪一下路由:

PC>tracert 100.1.1.1traceroute to 100.1.1.1, 8 hops max
(ICMP), press Ctrl+C to stop1  192.168.10.252   47 ms  31 ms  47 ms2  192.168.100.2   78 ms  94 ms  78 ms3  100.1.1.1   47 ms  62 ms  63 ms
7、跟踪上行接口
<coresw1>sys
[coresw1]int Vlanif 10
[coresw1-Vlanif10]vrrp vrid 10 track interface g0/0/3 reduced 30
http://www.dtcms.com/a/307644.html

相关文章:

  • 相亲小程序安全与隐私系统模块搭建
  • 按键精灵iOS工具元素命令SetText:自动化输入的终极解决方案
  • 前端核心技术Node.js(二)——path模块、HTTP与模块化
  • 客户服务自动化:如何用CRM减少50%人工工单?
  • 多架构镜像整合全攻略:在Docker中实现单一镜像支持同时支持amd64和arm64架构
  • 打车小程序 app 系统架构分析
  • HUD抬头显示器-杂散光测试设备 太阳光模拟器
  • SAM模型细节分析 (附录内容)
  • 构建高效AI应用:深入探讨飞算JavaAI框架与实践
  • [特殊字符] 数据可视化结合 three.js:让 3D 呈现更精准,3 个优化经验谈
  • Python汉字贪吃蛇程序升级版
  • Java报错:error: missing return statement
  • PCIE FAQ
  • 【数据结构】生活中的数据结构:从吃饭与编程看栈与队列思维
  • CSS 打字特效
  • 前缀和-1314.矩阵区域和-力扣(LeetCode)
  • 《汇编语言:基于X86处理器》第10章 编程练习
  • SFT最佳实践教程 —— 基于方舟直接进行模型精调
  • stm32中优先使用原子操作的具体实现方式
  • leecode611 有效三角形的个数
  • 基于N32G45x+RTT驱动框架的定时器外部计数
  • WebMvcConfigurer配置接口详解
  • ClickHouse vs PostgreSQL:数据分析领域的王者之争,谁更胜一筹?
  • 模型优化——在MacOS 上使用 Python 脚本批量大幅度精简 GLB 模型(通过 Blender 处理)
  • 【linux驱动开发】Vscode + Remote SSH + clangd + bear=内核源码阅读环境搭建
  • Visual Studio Code (VSCode) 的常用快捷键
  • 33.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--单体转微服务--财务服务--记账
  • Shader开发(五)什么是渲染管线
  • 【大模型理论篇】混合思考之自适应思维链
  • day28_2025-07-31