一、主备备份双机热备状态形成过程
为了实现主备备份方式的双机热备,我们需要在FW1上启用Active组,并将FW1上的VRRP备份组都加入Active组;在FW2上启用Standby组,并将FW2上的VRRP备份组都加入Standby组。实现此操作的命令为vrrp vrid virtual-router-id virtual-ip virtual-address [ ip-mask | ip-mask-length ] { active | standby }。这条命令看似简单,但功能很强大,一条命令配置下去两件事轻松搞定:
l 由于是在接口视图下执行这条命令,所示实际上是将接口加入了VRRP备份组,同时指定了虚拟IP地址和掩码。
当接口的IP地址与VRRP备份组的虚拟IP地址不在同一网段时,必须配置虚拟IP地址的掩码。
l “active | standby”参数是将VRRP备份组加入Active或Standby组。
结合下面的图来给出我们建立主备方式双机热备的具体配置,如下表所示:

各种VGMP报文和HRP报文都是通过心跳口发送的,心跳口可以说是双机热备的“命脉”,要点多多,务必关注:
二、负载分担双机热备状态形成和切换过程
为了实现负载分担方式的双机热备,我们需要在FW1和FW2上都启用Active组和Standby组,使FW1的Active组与FW2的Standby组进行通信,构成一组“主备”,FW2的Active组与FW1的Standby组进行通信,也构成一组“主备”。这样两台FW形成互为主备的状态,也就是负载分担状态。
结合下图给出负载分担方式的双机热备配置,如下表所示:

三、VGMP的功能
而由上面的例子可以看出,VGMP在双机热备中主要实现以下三个功能:
1、 故障监控:VGMP组能够监控VRRP备份组状态变化,从而感知到VRRP组内接口的故障和恢复。(私下里嘀咕:VGMP组能不能直接监控接口故障呢,一定要通过VRRP备份组监控接口么?)
2、 状态切换:VGMP组感知到VRRP备份组状态变化后,会调整自身的优先级,并与对端的VGMP组重新协商主备状态。(私下里嘀咕:这一点比较清楚了,本篇都是在讲状态如何切换和协商的。)
3、 流量引导:两个VGMP组主备状态建立或者切换后,会强制组内VRRP备份组状态统一切换,然后由状态为Active的VRRP备份组发送免费ARP来引导流量通过自身转发。(私下里嘀咕:如果VGMP组能够直接监控接口的话,流量引导方式也是这样么?)
实际上VGMP功能很强大,通过监控VRRP备份组状态实现防火墙主备状态切换和流量引导仅仅是VGMP的一个招式。这个招式仅仅适用于防火墙上行或下行设备是交换机的场景,因为VRRP本身就是为这个场景量身定制的。当防火墙上行或下行设备是路由器的时候,VGMP就无力应对了么?当然不会的!