VRRP虚拟路由器冗余协议

一、VRRP介绍

VRRP(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)是一种用于提高网络可靠性的协议,旨在通过冗余机制解决默认网关单点故障问题。

核心思想:将多个物理路由器虚拟成一个逻辑路由器(虚拟路由器),对外共享一个虚拟IP地址(VIP)作为默认网关。

**工作原理:**在VRRP中存在一个组的概念,需要将所有需要协同工作的路由器放到同一个VRRP组中,为了区分和标识不同的VRRP组,需设定一个VRID(8位二进制),一个VRRP组需要逻辑上生成一台路由器,手工配置一个虚拟的IP地址,它会自动生成一个虚拟的MAC地址(0000-5e00-01XX,VRID作为最后的8位二进制)

VRRP协议版本

VRRPv2(RFC 3768):支持IPv4。

VRRPv3(RFC 5798):支持IPv4/IPv6,改进认证和兼容性。

二、VRRP工作过程

1、当网关接口配置激活VRRP后,则所有网关接口发送VRRP报文,进行主备关系选举,参数最优的设备为主master,其余设备为备份设备。

  • 选举规则:先比较参数中的优先级(8位二进制构成,范围1~255,默认值100),选择优先级最大的作为主master,其余为备;若优先级相同,则选择IP的地址最大的为主,其余为备。

2、主设备周期(默认1s)发送VRRP报文进行保活,其余设备仅侦听。

3、若在一个Master-down计时器(默认3.6s)的时间内没有收到主设备的报文,则认定主设备失效,将重新选举一个设备为主设备。

  • Master-down计时器机制:通过计算周期时间和优先级获得,计算公式为:3 × 周期时间 + (256 - 优先级) / 256。后者为偏移时间,意味着优先级越高的设备,偏移时间越小,则Master-down计时器时间越小,即优先发送VRRP报文成为主设备。

注意:VRRP默认抢占模式,但是仅针对优先级生效。

三、VRRP配置

1、实验拓扑

2、实验要求

(1)实现PC1能够访问R1的环回1.1.1.1/24。

(2)配置VRRP,其中R3为主设备。

(3)模拟R3接口故障,测试故障转移。

3、实验配置

(1)基础配置

R1:

复制代码
# 配置接口IP地址
[r1]int g0/0/0
[r1-GigabitEthernet0/0/0]ip add 12.0.0.1 24
[r1-GigabitEthernet0/0/0]int g0/0/1
[r1-GigabitEthernet0/0/1]ip add 13.0.0.1 24
[r1-GigabitEthernet0/0/1]int l0
[r1-LoopBack0]ip add 1.1.1.1 24
[r1-LoopBack0]q

# 配置静态路由
[r1]ip route-static 192.168.1.0 24 12.0.0.2
[r1]ip route-static 192.168.1.0 24 13.0.0.2

R2:

复制代码
# 配置接口IP地址
[r2]int g0/0/0
[r2-GigabitEthernet0/0/0]ip add 12.0.0.2 24 
[r2-GigabitEthernet0/0/0]int g0/0/1
[r2-GigabitEthernet0/0/1]ip add 192.168.1.1 24
[r2-GigabitEthernet0/0/1]q

# 配置静态路由
[r2]ip route-static 0.0.0.0 0 12.0.0.1

R3:

复制代码
# 接口IP
[r3]int g0/0/1
[r3-GigabitEthernet0/0/1]ip add 13.0.0.2 24
[r3-GigabitEthernet0/0/1]int g0/0/2
[r3-GigabitEthernet0/0/2]ip add 192.168.1.2 24
[r3-GigabitEthernet0/0/2]q

# 静态路由
[r3]ip route-static 0.0.0.0 0 13.0.0.1

PC1和PC2:

需要注意的是PC端网关填VIP,即虚拟网关。

(2)配置VRRP

R2:

复制代码
# 配置虚拟IP
[r2]int g0/0/1
[r2-GigabitEthernet0/0/1]vrrp vrid 1 virtual-ip 192.168.1.3

R3:

复制代码
# 配置虚拟IP
[r3]int g0/0/2
[r3-GigabitEthernet0/0/2]vrrp vrid 1 virtual-ip 192.168.1.3

注意:所有需要协同工作的设备的接口在配置时,VRID和虚拟IP地址必须配置成一样的。

查看VRRP配置:

复制代码
[r2]display vrrp

其中要注意的是Preempt为抢占模式(仅针对优先级),以及PriorityRun和PriorityConfig分别表示实际允许优先级和配置优先级。

(3)配置R3成为主设备

复制代码
# 修改优先级
[r3-GigabitEthernet0/0/2]vrrp vrid 1 priority 110

# 查看是否成为主设备
[r3-GigabitEthernet0/0/2]dis vrrp
  GigabitEthernet0/0/2 | Virtual Router 1
    State : Master
    Virtual IP : 192.168.1.3
    Master IP : 192.168.1.2
    PriorityRun : 110
    PriorityConfig : 110
    MasterPriority : 110
    Preempt : YES   Delay Time : 0 s
    TimerRun : 1 s
    TimerConfig : 1 s
    Auth type : NONE
    Virtual MAC : 0000-5e00-0101
    Check TTL : YES
    Config type : normal-vrrp
    Backup-forward : disabled
    Create time : 2025-03-28 23:21:57 UTC-08:00
    Last change time : 2025-03-28 23:27:48 UTC-08:00

注意:华为设备中,虚拟IP地址是可以配置的和物理接口的IP地址相同,即这个接口将直接变成主,优先级为255,而手工配置的优先级最大为254。

(4)配置上行链路监控

复制代码
# 若上行链路故障,则优先级减少20
[r3-GigabitEthernet0/0/2]vrrp vrid 1 track interface GigabitEthernet 0/0/1 reduc
ed 20

# 配置抢占延迟,一般配置在主设备上
[r3-GigabitEthernet0/0/2]vrrp vrid 1 preempt-mode timer delay 20

(5)测试

PC1 访问 R1:

模拟链路故障后,PC1 访问 R1:

复制代码
[r3-GigabitEthernet0/0/2]shutdown

恢复链路,模拟上行链路故障,等待20s后再次查看VRRP信息:

复制代码
[r3-GigabitEthernet0/0/2]undo shutdown 
 
[r3-GigabitEthernet0/0/2]int g0/0/1	
[r3-GigabitEthernet0/0/1]shutdown 

再次进行访问测试:

相关推荐
looking_for__3 小时前
【Linux】应用层自定义协议与序列化
linux·服务器·网络
科技块儿4 小时前
如何选择合适的IP查询工具?精准度与更新频率全面分析
网络·tcp/ip·安全
devmoon4 小时前
Polkadot SDK 自定义 Pallet Benchmark 指南:生成并接入 Weight
开发语言·网络·数据库·web3·区块链·波卡
君鼎4 小时前
计算机网络第九章:无线网络与移动网络学习总结
网络·计算机网络
匀泪4 小时前
云原生(LVS DR模式ipvs实验)
服务器·网络·lvs
却道天凉_好个秋4 小时前
密码学(一):sm4+ofb
网络·密码学·sm4·ofb
云姜.4 小时前
TCP协议特性
服务器·网络·tcp/ip
寻星探路10 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
盟接之桥13 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
会员源码网14 小时前
理财源码开发:单语言深耕还是多语言融合?看完这篇不踩坑
网络·个人开发