VRRP 虚拟路由器标识
在VRRP虚拟路由器有唯一的标识:VRID,范围为 0~255。该路由器对外表现为唯一的虚拟MAC 地址,地址的格式为 00005E0001[VRID]。VRRP 协议使用多播数据来传输 VRRP 数据,Master 路由器转发数据时所使用的就是这个特殊的虚拟源 MAC 地址,负责源 MAC 地址为虚拟MAC 地址的 ARP 请求应答,而不是自身网卡的 MAC 地址。这样无论备份组中担当转发任务的实际路由器如何切换,都可保证呈现终端设备的是唯一一致的 IP 和 MAC 地址,减少了网关路由器切换对终端设备的影响。

VRRP 控制报文
VRRP 控制报文只有一种,那就是 VRRP 通告(Advertisement)。VRRP 备份组中的 Master 路由器会定时发送 VRRP 通告报文,通知备份组内的路由器自己工作正常。它使用 IP 多播数据包进行封装,使用的组播 IP 地址为 224.0.0.18(IP 协议号为 112;IP 包的 TTL 值必须为 255), 发布范围只限于同一局域网内。这保证了 VRID 在不同网络中可以重复使用。用户可以通过设置 VRRP 定时器来调整 Master 路由器发送 VRRP 通告报文的时间间隔。如果 Backup 路由器在等待了三个间隔时间后仍然没有收到 Master 路由器发送的 VRRP 通告报文,则认为原来的 Master 路由器失效,把自己当成 Master 路由器,并对外发送 VRRP 通告报文,重新进行 Master 路由器的选举。

VRRP 的路由器标识、控制报文、认证和Master 选举

如果 VRRP 备份组中没有具备虚拟路由器 IP 地址的路由器,则要进行 Master 路由器选举。首先各路由器都宣告自己是 Master,发送 VRRP 通告信息,如果收到的其他机器发来的通告信息的优先级比自己高,自己将转换为 Backup 角色;如果相等的话,将比较两个路由器的实际 IP 地址,IP值较大的优先级高,成为 Master 角色。另外,备份组中的路由器具有以下两种工作方式:
VRRP 根据优先级来确定备份组中每台路由器的角色(Master 路由器或 Backup 路由器)。优先级越高,则越有可能成为 Master 路由器。在 VRRP 路由器组中,按优先级选举 Master 路由器,VRRP 协议中优先级范围是 0~255 的正整数。优先级 0 一般用在 IP 地址所有者主动放弃 Master 路由器角色时使用,所以实际可配置的优先级范围为 1~254。若 VRRP 路由器的 IP 地址和虚拟路由器的 IP 地址相同,则称该路由器为 VRRP 组中的 IP 地址所有者,具有最高优先级(255),自动成为 Master 路由器,无需进行选举。

非抢占方式

如果备份组中的路由器工作在非抢占方式下,则只要 Master 路由器没有出现故障,Backup 路由器即使随后被配置了更高的优先级也不会成为 Master 路由器。
为了避免备份组内的成员频繁进行主备状态转换,让 Backup 路由器有足够的时间搜集必要的信息(如路由信息),Backup 路由器接收到优先级低于本地优先级的通告报文后,不会立即抢占成为 Master 路由器,而是等待一定时间——抢占延迟时间后,才会对外发送 VRRP 通告报文取代原来的 Master 路由器。

抢占方式
如果备份组中的路由器工作在抢占方式下,它一旦发现自己的优先级比当前的Master 路由器的优先级高,就会对外发送 VRRP 通告报文,导致备份组内路由器重新选举Master 路由器,并最终取代原有的 Master 路由器。相应地,原来的 Master 路由器将会变成 Backup 路由器。