加载中...

VRRP协议

一、VRRP(虚拟路由冗余协议)简介

1.1 VRRP(虚拟路由冗余协议)使用场景

​ 虚拟路由冗余协议VRRP(Virtual Router Redundancy Protocol)通过把几台路由设备联合组成一台虚拟的路由设备,将虚拟路由设备的IP地址作为用户的默认网关实现与外部网络通信。当网关设备发生故障时,VRRP机制能够选举新的网关设备承担数据流量,从而保障网络的可靠通信。

1.2 VRRP(虚拟路由冗余协议)实现目的

冗余备份

VRRP可以将多台路由设备配置为缺省网关路由器。

负载分担

多台设备设置多个vrrp-group来实现网关的负载

1.2 VRRP(虚拟路由冗余协议)术语

虚拟路由器:由VRRP抽象生成出的逻辑路由器,此路由器上有虚拟IP和虚拟MAC地址

虚拟MAC:VRRP虚拟路由器的MAC地址,格式为 00-00-5E-00-01-{VRID}

二、VRRP(虚拟路由冗余协议)结构

2.1 VRRP报文格式

VRRP报文封装在IP报文中,在IP报文头中,源地址为发送报文接口的主IP地址(不是虚拟IP地址),目的地址是224.0.0.18,TTL是255

image-20250306225320936

2.1.1VRRP v2 格式

image-20250306191431674

报文字段 含义
Version VRRP协议版本号,取值为2。
Type VRRPv2报文的类型,取值为1,表示Advertisement。
Virtual Rtr ID 虚拟路由器ID。一个VRID唯一标识了一个虚拟路由器,取值范围为[1,255]。(所以一台路由器的接口最多可以运行255个VRRP组)
Priority Master设备在备份组中的优先级。
Count IPv4 Addrs 备份组中虚拟IPv4地址的个数。
Auth Type VRRPv2报文的认证类型。
协议中指定了3种类型:0:Non Authentication,表示无认证。
1:Simple Text Password,表示简单字符认证方式。
2:IP Authentication Header,表示HMAC-MD5认证方式。
Adver Int VRRPv2报文的发送时间间隔,单位是秒。
Checksum 16位校验和,用于检测VRRPv2报文中的数据完整性。
IPv4 Address VRRP备份组的虚拟IPv4地址,所包含的地址数定义在Count IPv4 Addrs字段。
Authentication Data VRRPv2报文的认证字。目前只有简单字符认证和HMAC-MD5认证才用到该部分,对于其他认证方式,一律填0。

二、VRRP(虚拟路由冗余协议)原理

3.1 VRRP(虚拟路由冗余协议)优先级

Priority 0:当退出vrrp master,主动请求切换,保留,不能手工配置

Priority 255:当虚拟IP等于物理网关地址,此交换机是Owner(所有者),默认优先级为255,不能修改

Priority 100: 缺省优先级

3.2 VRRP(虚拟路由冗余协议)状态机行为

image-20250306225441240

3.2.1 INITIALIZE 初始化

当收到shutdown消息后进入的状态

检查自己是否是owner?如果是Owner(所有者)直接变为MASTER,否则进入BACKUP状态

3.2.2 BACKUP的行为

  1. 不发送免费Arp
  2. 不响应针对虚拟网关的的Arp request请求
  3. 不转发针对dmac为vmac的流量
  4. 侦听Master发送vrrp通告,启动MDI计时器,一旦计时器超时切master

3.2.3 MASTER 行为

  1. 发送免费ARP,Smac是虚拟Mac,Dmac是广播
  2. 响应针对vip(网关ip)的arp-request,回复arp-reply,包含vmac
  3. 转发针对dmac为vmac的流量
  4. 周期发送vrrp announcement(vrrp宣告)默认1s

3.3 Master_Down_Interval定时器

Master_Down_Interval定时器是Backup设备在该定时器超时后仍未收到通告,则会转换为Master状态。计算公式如下
$$
\text{Master_Down_Interval} = (3 \times \text{Advertisement_Interval}) + \text{Skew_time} \quad \text{(偏移时间)}
$$

Advertisement_Interval 默认1S
$$
\text{Skew_Time} = \frac{256 - \text{Backup Priority}}{256} \quad (\text{单位:秒})
$$

3.4 VRRP(虚拟路由冗余协议)选举流程

​ 初始化时,优先级越高的设备越容易成为Master,Master_Down_Interval定时器的时间优先级越大越短。

​ 当待Master_Down定时器超时后再切换至Master状态。先切换至Master状态的VRRP设备向其他设备(Backup设备)发送VRRP通告报文。

3.4.1 抢占问题

​ 如果VRRP通告报文中Master设备的优先级高于或等于Backup设备的优先级,则Backup设备保持Backup状态;

​ 如果VRRP通告报文中Master设备的优先级低于Backup设备的优先级,采用抢占方式的Backup设备将切换至Master状态,采用非抢占方式的Backup设备仍保持Backup状态

3.5 VRRP(虚拟路由冗余协议)工作行为

触发条件 Master设备动作 Backup设备动作
收到优先级 > 本地优先级 立即切换为 Backup状态 保持Backup状态,重置MDI计时器
收到优先级 < 本地优先级 忽略,保持Master状态 判断抢占配置
 ▸ 抢占关闭 → 保持Backup
 ▸ 抢占开启 → 根据延时切换Master
收到优先级 = 本地优先级 比较接口IP地址
 ▸ IP大 → 切Backup
 ▸ IP小 → 保持Master
保持Backup状态,重置MDI计时器
收到优先级 = 0 不适用(此时设备已释放Master) 等待Skew_Time后切换为Master
本机主动关闭VRRP(接口shutdown) 发送 Priority=0,强制释放Master 立即检测到Priority=0,触发快速切换(无需等待MDI超时)

四、VRRP(虚拟路由冗余协议)典型配置

image-20250307003647199

# LSW1
#
interface Vlanif10
ip address 192.168.1.254 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.1.254
#
interface Vlanif20
ip address 192.168.2.100 255.255.255.0
vrrp vrid 2 virtual-ip 192.168.2.254

# lSW2
#
interface Vlanif20
ip address 192.168.2.254 255.255.255.0
vrrp vrid 2 virtual-ip 192.168.2.254
#
interface Vlanif10
ip address 192.168.1.100 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.1.254
posted @ 2025-03-18 19:29  江寒雨  阅读(339)  评论(0)    收藏  举报