VGMP协议:VGMP(VRRP Group Management Protocol),VRRP组管理协议,是实现对多个VRRP组进行统一管理的协议。该协议由H3C公司开发,是一种私有协议,广泛应用于华为防火墙等网络设备上,是配置防火墙上双机热备技术的一大基础协议。 VGMP协议是在VRRP协议的基础上开发而来的,其最主要的作用便是集中管理VRRP备份组,控制VRRP状态的统一切换。
HRP协议:HRP---华为冗余协议---华为的私有协议---可以同步防火墙上的配置和状态信息
1.1、HRP在进行双机热备时,还有一个要求,两台热备设备之间,必须拥有一条链路,用来同步信 息,并且,这条链路必须是三层链路 --- 这条链路在进行数据传递时,不受安全策略的影 响。(注意,如果心跳线是直连的,则不受安全策略的影响,但是,如果中间有中继设备,即 非直连场景,则需要配置安全策略) --- 心跳线 ---- VGMP协议发送的报文也是通过心跳线 传输的。
1.2、HRP会周期性的发送心跳报文,只有主设备会发送,周期时间默认为1S,如果备设备在三个周 期时间内默认3S没有收到对方的心跳报文,则认定对方出现故障将以自生为主。
HRP的三种备份方式
1,自动备份 --- 自动备份配置和状态信息,但是,配置信息可以立即自动备份,状态信息无 法立即备份,只能通过短暂的延迟之后,在进行备份(10S左右)
2,手工备份 --- 由网络管理员手工触发,可以立即同步配置和状态信息
3,快速备份 --- 该备份方式仅针对负载分担的场景。 无法同步配置信息,仅能同步状态信息,并且可以立即同步状态信息。
各场景过程分析
1.主设备形成场景
1.1、FW1被设定为主设备---FW1中的Active组被激活,并将上下两个VRRP组拉入到VGMP中的Active组中,并且状态都是active。
1.2、FW2被设定为备设备---FW2中的Standby组被激活,并将上下两个VRRP组拉入到VGMP中的Standby组,并且状态都是standby。(在VGMP中存在优先级的概念,Active组的默认优先级为65001,Standby组的默认优先级为65000,所有的主动状态都被称为active,被动状态都称为standby。)
1.3、主设备向上下两个VRRP组的接口发送免费的ARP报文,让交换机切换MAC地址表,之后所有的流量 将从主设备通过。
2.主备故障切换场景(主设备接口故障)
2.1、主设备(FW1)G1/0/1接口发生故障,接口的状态会从active切换到initialize状态(接口故障的一个过度状态)
2.2、VGMP感知到接口出现故障,主设备的Active组的优先级由65001降到64999。(每一个接口出现故障,优先级就会减2)
2.3、主设备通过心跳线向备设备发送VGMP请求报文(这个报文包含自己降低后的优先级)。
2.4、备设备(FW2)接受到了主设备发送的请求报文,发现自己的优先级高于对方的优先级,然后将自己Standby组的standby状态切换为active。FW2中的VGMP组发生变化,则组中的VRRP组同步发生变化,都从standby状态切换为active状态。然后向主设备发送应答报文告诉它允许切换,已经将自己的standby状态切换active。
2.5、FW1接收到报文后将自己的Active组中的active状态切换为standby状态,VGMP组发生变化,同样的VRRP也会同步,由active状态切换为standby,注意不包含故障接口,它的状态依旧是initialize状态。
2.6、FW2上下两个VRRP组的接口将发送免费报文,让交换机切换MAC地址表,之后所有的流量 将从FW2通过。
3.主备故障切换场景(整机故障)
3.1、整机故障可以通过保活机制来进行切换,主设备发生故障,则不会发送HRP心跳报文, 备设备在超时时间内没有接收到主设备的保活包,则将会进行状态切换;
4.主设备恢复的场景
4.1、根据有没有开启抢占分为两种不同的情况
4.1.1、如果没有开启抢占,主设备虽然恢复,但是备设备仍以原主设备身份继续工作。
4.1.2、如果开启了抢占。
1、主设备(FW1)的接口状态由initialize状态切换为standup,Active组的优先级恢复为65001。
2、 主设备通过心跳线向备设备发送VGMP请求报文,被设备接受到后,发现自己的优先级低于主设备的优先级。将自己的Active组中的active状态切换为standup状态,VGMP组发生变化后,VRRP组同步切换状态。备设备向主设备发送VGMP回应报文同意转换。
3、主设备收到会应报文,将自己的Active组的active状态切换为standby,VGMP组发生变化,VRRP组同步切换状态,然后主设备向上下两个VRRP组的接口将发送免费报文,让交换机切换MAC地址表,之后所有的流量 将从FW1通过。向备设备发送HRP报文。
5.负载分担场景
5.1、在负载分担场景里面,两个设备都相当于主设备。每个设备里面有两个VGMP组,分别是Active组和Standby组。
5.2、由两个设备的向上下两个VRRP组的接口发送免费的ARP报文,让交换机切换MAC地址表,之后的流量将此两个设备通过。然会通过心跳线发送HRP报文。
6.负载分担接口故障场景
6.1、FW1设备的G1/0/1接口故障,接口发生故障状态由active状态切换为initialize状态,FW1设备的Active、Standby两个组的优先级都要降低。
6.2、FW1设备通过心跳线向FW2发生VGMP请求报文,FW2设备接受到请求之后,比较优先级后,将自己Standby组中的standby状态转换为active,VGMP组状态转换后VRRP需要同步进行转换。
6.3、FW2设备发送确认报文,FW1中的Active组的状态由active变为standby。
6.4、由FW2的上下的VRRP组的接口发送免费ARP报文,让交换机切换MAC地址,之后所有的流量都从FW2通过(之前的流量从FW1和FW2通过)。
6.5、两台设备依旧互相发送HPR心跳报文。