参考:https://kb.hillstonenet.com/cn/ha-dual-redundancy-inspection/
https://support.huawei.com/hedex/hdx.do?docid=EDOC1100149311&id=ZH-CN_CONCEPT_0178924792
https://www.h3c.com/cn/d_201405/922032_30005_0.htm
Active-Passive模式
Active-Passive(A/P)模式:在HA簇中配置两台设备组成一个HA组,组内只有一台主设备。主设备处于活动状态,转发报文,同时将其所有网络和配置信息以及当前会话信息传递给备份设备。当主设备出现故障时,备份设备接替主设备工作,转发报文。这种A/P模式具有较强冗余性,而且其网络结构简单,便于维护管理。广泛适用于路由、NAT、透明模式环境中
基于VRRP实现负载分担双机热备
如果要两台FW工作在负载分担模式,两台FW上都要有状态配置为active的VRRP备份组。
如图1所示,FW_A的VRRP备份组1和3状态被配置成active,VRRP备份组2和4状态被配置成standby。FW_B的VRRP备份组2和4状态被配置成active,VRRP备份组1和3状态被配置成standby。正常情况下,两台设备的VGMP组状态都是load-balance,VRRP备份组的运行状态由配置决定。因此,FW_A的VRRP备份组1和3运行状态是Master,VRRP备份组2和4运行状态是Backup。FW_B的VRRP备份组2和4运行状态都是Master,VRRP备份组1和3运行状态是Backup。
内部网络中部分主机的网关被设置成了VRRP备份组3的虚拟IP地址10.0.0.1。这些主机在访问外部网络时,会广播一个ARP请求报文,请求10.0.0.1的MAC地址。FW_A的VRRP备份组3状态为Master,会响应内网主机的ARP请求。FW_B的VRRP备份组3状态为Backup,不会响应内网主机的ARP请求。FW_A响应的ARP报文会刷新交换机的MAC地址表和主机的ARP缓存表,使这部分主机发往外部网络的流量都被引导到FW_A上处理。
而另一部分主机的网关被设置成了VRRP备份组4的虚拟IP地址10.0.0.2。这些主机在访问外部网络时,同样会广播一个ARP请求报文,请求10.0.0.2的MAC地址。此时,只有FW_B会响应这个ARP请求。因此,这部分主机的流量都被引导到FW_B上转发。
同理,路由器R1到内部网络路由的下一跳地址被设置成了VRRP备份组1的虚拟IP地址10.0.1.1,路由器R1发往内部网络的流量会被引导到FW_A上处理。路由器R2到内部网络路由的下一跳被设置成了VRRP备份组2的虚拟IP地址10.0.1.2,路由器R2发往内部网络的流量会被引导到FW_B上处理。
VGMP组控制VRRP备份组状态
华为交换机或路由器设备上,VRRP备份组的状态是由VRRP优先级大小决定。同一个VRRP备份组中,VRRP优先级最大的设备的VRRP备份组状态为Master,其他设备的VRRP备份组状态为Backup。FW的VRRP备份组状态则不是由VRRP优先级大小决定。实际上,FW的VRRP优先级是不可配置的。FW启用双机热备功能后,VRRP优先级固定为120。
在FW上,接口故障时,接口下VRRP备份组状态为Initialize。接口无故障时,接口下VRRP备份组状态由VGMP组的状态决定,具体如下:
- 当VGMP组状态为active时,VRRP备份组的状态都是Master。
- 当VGMP组状态为standby时,VRRP备份组的状态都是Backup。
- 当VGMP组状态为load-balance时,VRRP备份组状态由VRRP备份组的配置决定。
VGMP组控制动态路由开销值
启用双机热备功能后,FW能根据VGMP组状态动态调整OSPF、OSPFv3发布路由的开销值、动态调整BGP发布路由的MED值。具体如下:
- VGMP组状态为active时,FW按照OSPF/OSPFv3/BGP路由的配置正常发布路由。
- VGMP组状态为standby时,FW会按照如下方法调整OSPF、OSPFv3发布路由的开销值和BGP发布路由的MED值:
- OSPF:将OSPF发布路由的开销值调整为一个指定数值。默认是将开销值调整为65500,可以使用hrp adjust ospf-cost enable slave-cost命令修改这个数值。
- OSPFv3:将OSPFv3发布路由的开销值调整为一个指定数值。默认是将开销值调整为65500,可以使用hrp adjust ospfv3-cost enable slave-cost命令修改这个数值。
- BGP:在用户配置的BGP MED值基础上增加一定数值作为BGP发布路由时的MED值。默认增加100,可以使用hrp adjust bgp-cost enable slave-cost命令修改这个数值。
- VGMP组状态为load-balance时,FW默认按照OSPF/OSPFv3/BGP路由的配置正常发布路由。如果用户在FW上配置了hrp standby-device命令指定FW为备机或者将FW的所有VRRP备份组状态参数都配置为standby时,FW会调整OSPF、OSPFv3发布路由的开销值和BGP发布路由的MED值,调整的方法与VGMP组状态为standby时相同。
下面以VGMP组控制OSPF发布路由开销值为例进行说明。如图1所示,FW_A和FW_B组成双机热备组网。FW_A、FW_B、R1和R2之间运行OSPF协议。FW_A和FW_B的关键配置如表1所示。
图1 FW业务接口工作在三层,上下行连接路由器的双机热备组网图
VGMP组控制VLAN状态
启用双机热备功能后,FW能根据VGMP组状态启用或禁用VLAN。具体如下:
- FW默认不会根据VGMP组状态调整任何VLAN的状态。使用hrp track vlan vlan-id命令配置VGMP组监控VLAN状态后,FW才会根据VGMP组的状态调整VLAN的状态。
- VGMP组状态为active时,FW将VGMP组监控的VLAN状态调整为启用状态,该VLAN可以转发报文。
- VGMP组状态为standby时,FW将VGMP组监控的VLAN状态调整为禁用状态,该VLAN不能转发报文。
- VGMP组状态为load-balance时,FW默认将VGMP组监控的VLAN状态调整为启用状态。如果用户在FW上配置了hrp standby-device命令指定FW为备机或者将FW的所有VRRP备份组状态参数都配置为standby时,FW会将VGMP组监控的VLAN状态调整为禁用状态。
下面以图1所示组网为例来说明FW根据VGMP组状态调整VLAN状态的过程。图1中FW_A和FW_B的关键配置如表1所示。
图1 FW透明模式,上下行连接交换机的双机热备组网图
华三FW负载分担模式下,两台设备均为主设备,都处理业务流量,同时又作为另一台设备的备份设备,备份对端的会话信息(如下图所示,Firewall 1和Firewall 2均处理业务,互为备份)。当其中一台故障后,另一台设备负责处理全部业务,从而保证新发起的会话能正常建立,当前正在进行的会话也不会中断