技术背景
通常,一个网段内只有一个网关。因此一旦网关出现故障,该就被孤立。
VRRP 虚拟路由器冗余协议
Virtual Router Redundancy Protocol
-
将多个物理网关加入到备份组中,形成一台虚拟网关,承担物理网关功能
-
只要备份组中仍有一台物理网关正常工作,虚拟网关就仍然正常工作
-
两个版本:VRRPv2基于IPv4,VRRPv3基于IPv6
VRRP备份组
VRRP Group
-
将局域网内的一组网关设备划分在一起,称为一个备份组
-
由一个主(Master)和多个备(Backup)组成,功能上相当于一台虚拟网关
-
虚拟网关具有一个虚拟IP地址,作为终端的网关IP地址
VRRP选举规则
根据优先级,选举出Master,承担网关功能
|
角色
|
备注
|
|
Master
|
负责应答对虚拟IP地址的ARP请求,转发发往虚拟网关的数据包
|
|
Backup
|
负责在Master故障后,阶梯Master的工作
|
|
优先级
|
0~255,默认100,越大越优先
255:保留给IP地址拥有者使用(虚拟网关地址与物理口地址一致,则该物理设备优先级直接为255)
0:用于触发Backup立即称为Master(如:主动退出VRRP组)
如果优先级一致,IP地址越大越优先
|
| 抢占规则 |
默认开启抢占
|
下图解释:虚拟网关地址为10.1.1.254,而RTA设备的地址也是10.1.1.254,则RTA设备直接将优先级修改为255,使得自己变为Master
虚拟MAC地址规则
00005e:固定字段,表示IANA机构
0001:表示VRRP
14:表示VRRP组的编号,十六进制(十进制20转为十六进制为14)
VRRP工作流程
正常状态下,运行VRRP的设备会将自身状态切换为Backup,等待计时器超时,如没有设备抢占,则切换为Master
VRRP默认1秒发送一次状态信息,3秒超时,超时后,Backup设备将自身状态切换为Master
VRRP定时器
|
定时器
|
备注
|
|
通告间隔定时器
|
默认1秒
Master会定时发送VRRP通告报文,通知自己工作正常
如果Backup在等待了3个间隔时间后,依然没有收到通告报文,则认为自己是Master,并对外发送VRRP通告报文,重新进行Master的选举
|
|
抢占延迟定时器
|
默认0秒
为了避免频繁进行主备转换,让Backup有足够的时间搜集必要的信息(如路由信息)
Backup接受到优先级较低的VRRP通告报文后,不会立即抢占称为Master,而是等待一定时间后,才会对外发送VRRP通告报文取代原来的Master
|
VRRP报文格式
IP协议号:112
组播地址:224.0.0.18
Version:版本号(2表示IPv4,3表示IPv6)
Type:类型
Virtual Rtr ID:虚拟编号
Priority:优先级(0~255,默认100)
Count IP Addrs:IP地址数
VRRP状态机制
Backup → Master
-
初始情况下,均为Backup状态,当达到了3个间隔时间,则状态修改为Master;
-
当收到原Master设备发送的优先级为0的数据包时,本设备状态修改为Master;
Master → Backup
-
收到的VRRP报文中,优先级大于或等于本地优先级,且报文中的IP大于本地IP地址时,本设备状态切换为Backup。
VRRP设计方案注意事项
Master应该和STP的根桥保持一致,否则可能导致次优路径
(当不一致时,可能会导致Master设备进行割接或出现故障时,数据包不能立即转换到另外一台设备的情况)
VRRP应用
主备备份
多台主机,使用同一个VRRP(同一个网关地址),VRRP中一台设备为Master,其他设备为Backup,形成主备备份
负载分担
多台主机,使用多个VRRP组。以3个为例,3个VRRP设备分别担任其中一个VRRP的Master角色。其他两台VRRP设备作为对应VRRP组中的Backup角色。
企业网中常用操作:
解释:
VLAN10内的主机走VRRP 1 的网关,VRRP 1 中 RTA为Master,RTB为Backup;
VLAN20内的主机走VRRP 2的网关,VRRP 2 中RTB为Master,RTA为Backup;
从而实现主备备份且负载分担。