联系我们

苏州东元信息技术有限公司

 0512-66362750
 19962189169 (David)
 David@szdongyuan.cn
 江苏省苏州市旺吴路44-46号

新闻中心

网站首页 > 技术资讯 > 华为防火墙实现双机热备配置详解

华为防火墙实现双机热备配置详解

发布日期:2025-06-04 内容来源于:https://www.sz-dongyuan.cn/

一提到防火墙,一般都会想到企业的边界设备,是内网用户与互联网的必经之路。防火墙承载了非常多的功能,比如:安全规则、IPS、文件类型过滤、内容过滤、应用层过滤等。也正是因为防火墙如此的重要,如果防火墙一旦出现问题,所有对外通信的服务都将中断,所以企业中首先要考虑的就是防火墙的优化及高可用性。


博文大纲:


一、双机热备工作原理


二、VRRP协议


(1)VRRP协议概述


(2)VRRP的角色


(3)VRRP的状态机


(4)VRRP的工作原理


三、VGMP协议


(1)VGMP的工作原理


(2)VGMP的报文封装


(3)双机热备的备份方式


(4)连接路由器时的双机热备四、实现防火墙双机热备的配置


一、双机热备工作原理


随着互联网的发展,现在人们生活中的大多数问题都可以通过网络解决,但与此同时,网络安全问题也逐渐暴露出来。在企业中部署一台防火墙已然成为常态。如何能够保证网络不间断地传输成为网络发展中急需解决的问题!

华为交换机

企业在关键的业务出口部署一台防火墙,所有的对外流量都要经过防火墙进行传输,一旦防火墙出现故障,那么企业将面临网络中断的问题,无论防火墙本身的性能有多好,功能有多么强大。在这一刻,都无法挽回企业面临的损失。所以在企业的出口部署两台防火墙产品,可以在增加企业安全的同时,保证业务传输基本不会中断,因为两台设备同时出现故障的概率非常小。经过图中右边的部署,从拓补的角度来看,网络具有非常高的可靠性,但是从技术的角度来看,还需解决一些问题,正因为防火墙和路由器在工作原理上有着本质的区别,所以防火墙还需一些特殊的配置。

左图,内部网络可以通过R3→R1→R4到达外部网络,也可以通过R3→R2→R4到达,如果通过R3→R1→R4路径的cost(运行OSPF协议)比较小,那么默认情况,内部网络将通过R3→R1→R4到达外部网络,当R1设备损坏时,OSPF将自动收敛,R3将通过R2转发到达外部网络。

华为交换机

右图,R1、R2替换成两台防火墙,默认情况***量将通过FW1进行转发到达外部网络,此时在FW1记录着大量的用户流量对应的会话表项内容,当FW1损坏时,通过OSPF收敛,流量将引导FW2上,但是FW2上没有之前流量的会话表,之前传输会话的返回流量将无法通过FW2,而会话的后续流量需要重新经过安全策略的检查,并生成会话。这就意味着之前所有的通信流量都将中断,除非重新建立连接。


如图,华为防火墙的双机热备功能是通过提供一条备份链路(心跳线)、协商防火墙之间的主备状态及备份会话表、Server-map表等操作。根据防火墙的配置分别选举出主用设备及备用设备,当主用设备正常工作时,备用设备不提供数据包的转发,但是备用设备会实时从主用设备下载当前的会话表及Server-map表。从而保证,当主用设备故障时,即使切换到备用设备,备用设备依然存在当前流量的会话表及Server-map表,从而保证业务流量不中断。


在双机热备环境中,要求如下:(1)两台防火墙用于心跳线的接口加入相同的安全区域;(2)两台防火墙用于心跳线的接口的设备编号必须一致,比如都是G1/0/0;(3)建议用于双机热备的两条防火墙采用相同的型号、相同的VRP版本;


华为防火墙的双机热备包含以下两种模式:


**热备模式:**同一时间只用一台防火墙转发数据包,其他防火墙不转发数据包,但是会同步会话表及Server-map表;


**负载均衡模式:**同一时间,多台防火墙同时转发数据,但每个防火墙又作为其他防火墙的备用设备,即每个防火墙即是主用设备也是备用设备,防火墙之间同步会话表及Server-map表;


关于华为防护墙的热备模式和负载均衡模式如图:华为交换机

二、VRRP协议


在双机热备技术中,即使选举出了主用设备和备用设备,默认情况**量也通过主用设备转发,而备用设备处于备份状态。但是客户机通常通过指定网关地址来指定网络出口,当客户机将网关指向主用设备时,流量自然从主用设备转发,但是当主用设备故障时,客户机并不会将网关自动指向备用设备,所以即使双机热备本身可以切换、客户机依然无法正常通信。所以要保证双机热备可以正常工作,还需解决客户机网关自动切换的问题。而VRRP技术可以解决网关自动切换的问题,甚至还能让设备切换对客户机而言是透明的。在华为防火墙的双机热备技术中,VRRP是非常重要的一个组成部分。


(1)VRRP协议概述


VRRP(虚拟路由冗余协议)由IETF进行维护。用来解决网关单点故障的路由协议。VRRP可以应用在路由器中提供网关冗余,也可以用在防火墙中做双击热备。


VRRP的基本概念如下:(1)VRRP路由器:运行VRRP协议的路由器;(2)虚拟路由器:由一个主用路由器和若干备用路由器组成的一个备份组,一个备份组对客户机提供一个虚拟网关;(3)VRID:Virtual Router ID,虚拟路由器标识,用来**的表识一个备份组;(4)虚拟IP地址:提供给客户端的网关IP地址,也是分配给虚拟路由器的IP地址,在所有的VRRP中配置,只有主用设备提供该IP地址的ARP响应;(5)虚拟MAC地址:基于VRID生成的用于VRRP的MAC地址,在客户端通过ARP协议解析网关的MAC地址时,主用路由器提供该MAC地址;(6)IP地址拥有者:若将虚拟路由器的IP地址配置为某个成员物理接口的真是IP地址,那么该成员被称为IP地址拥有者;(7)优先级:用于表示VRRP路由器的优先级,并通过每个VRRP路由器的优先级选举主用设备及备用设备;(8)抢占模式:在抢占模式下,如果备用路由器的优先级高于备份组中的其他路由器(包括当前的主用路由器),将立即成为新的主用路由器;(9)非抢占模式:在非抢占模式下,如果备用路由器的优先级高于备份组中的其他路由器(包括当前的主用路由器),则不会立即成为主用路由器,直到下一次公平选举(如断电、设备重启等);


VRRP的工作原理与Cisco设备基本相同,只有一些细节上的一些区别,如图

华为交换机


2)VRRP的角色


工作在VRRP模式下的路由器有两种角色,分别是:


Master路由器:正常情况下由Master路由器负责ARP响应及提供数据包的转发,并且默认每隔1s向其他路由器通告Master路由器当前的状态信息;


Backup路由器:是Master路由器的备用路由器,正常情况下不提供数据包的转发,当Master路由器故障时,在所有的Backup路由器中优先级**的路由器将成为新的Master路由器,接替转发数据包的工作,从而保证业务不间断;


(3)VRRP的状态机


VRRP定义了三种工作状态,如下:


**Initialize状态:**刚配置VRRP时的初始状态。该状态下,不对VRRP报**任何处理,当接口shutdown或接口故障时将进入该状态;


**Master状态:**当前设备选举成为主用路由器时的一种状态。该状态下会转发业务报文,并周期性地发送VRRP通告报文,处于该状态的路由器还将响应客户机发起的ARP请求,并将虚拟MAC地址回应客户机。当接口关闭时,将立即切换至Initialize状态;


**Backup状态:**当前设备选举成为备用路由器的一种状态。该状态下不转发任何业务报文,工作在该状态下的路由器会接收主用路由器发送的VRRP通告报文,并判断主用路由器是否正常工作。在双机热备模式中还将同步主用设备上的状态信息;


三种状态之间的切换关系如图:


华为交换机

故障切换过程:默认情况下,Master设备(FW1)会周期性(每1s)地向Backup设备发送VRRP通告,而Backup设备每次收到VRRP通告,就将Master_DOWN_Interval计时器重置为0。当Master设备出现故障,无法发出VRRP通告报文时,Backup设备将无法接收到VRRP,在Master_DOWN_Interval超时后,将直接由Backup状态切换为Master状态,FW2代替FW1成为新的Master设备。同时会向下游交换机发出**ARP报文,以更新下游交换机的MAC地址表。而后续客户机发起的针对虚拟IP的ARP请求报文,FW2将直接代为回应,客户机发出的报文也将由FW2转发,而这一切变化对客户机而言都是透明的。因为虚拟IP地址仍然可用!


当FW1解决故障恢复正常运行时,因为FW1的优先级配置比FW2高,在抢占模式下,其将直接成为Master设备,而FW2再次回到Backup状态;在非抢占模式下,FW2依然是Master设备,而FW1成为Backup设备。


**建议:**当Master设备和Backup设备性能相差不大,同时网络规模较大时,建议配置为非抢占模式,因为这样可以减少网络的波动。


三、VGMP协议


(1)VGMP的工作原理


如果**使用双机热备+VRRP就会出现以下情况:

华为交换机


造成以下现象的原因是两个VRRP备份组各自**工作,,那么有没有什么办法可以使两个备份组协同工作,以保证设备在两个备份组的状态一致性呢?就需要使用到——VGMP协议。


VGMP(VRRP组管理协议)用来实现VRRP备份组的统一管理,以保证设备在各个备份组中的状态一致性。VGMP通过在设备(FW1和FW2)上将所有的备份组(备份组1和备份组2)加入一个VGMP组中进行统一管理,一旦检测到某个备份组(备份组1)中的状态变化(如接口进入Initialize状态),VGMP组将自身优先级减2,并重新协商VGMP的Active组和Standby组。选举出的Active组将所有的其他备份组(备份组1和备份组2)统一进行状态切换(备份组1和备份组2中的FW2将成为Master设备)。


VGMP的工作原理:


VGMP组的状态决定了VRRP备份组的状态,即设备的角色(如Master和Backup)不再通过VRRP报文选举,而是直接通过VGMP统一管理;


VGMP组的状态通过比较优先级决定,优先级高的VGMP组将成为Active,优先级低的VGMP组将成为Standby;


默认情况下,VGMP组的优先级为45000;


VGMP根据组内VRRP备份组的状态自动调整优先级,一旦检测到备份组的状态变成Initialize状态,VGMP组的优先级会自动减2;


通过心跳线协商VGMP状态信息;


VGMP的工作原理:

华为交换机

**注意:**在加入了VGMP组之后,VRRP中的状态标识从Master和Backup变成Active和Standby。


(2)VGMP的报文封装


VGMP通过心跳线协商VGMP的状态信息,通过发送VGMP报文实现。VGMP报文有以下两种形式,如图:


华为交换机


或者通过二层交换机相连时,发送的报文属于组播报文,报文封装中不携带UDP头部信息;右图中,心跳线通过三层设备(路由器)连接时,因为组播报文无法通过三层设备,所以在报文封装中会额外增加一个UDP头部信息,此时发送的报文属于单播;


在实际应用中,应根据实际的拓补灵活选择报文封装。在华为防火墙中,通过以下命令指定接口发送的报文属于哪种类型的封装。


[USG6000V1]hrp int g 1/0/0                         //eNSP模拟器不支持这条命令


[USG6000V1]hrp int g 1/0/0 remote 1.1.1.1


其中hrp命令用来指定用于心跳链路的接口,带remote参数的命令表示报文将封装UDP,并发送单播报文,不带remote参数的命令表示将发送组播报文。1.1.1.1标识对端是被(心跳线对端接口)的IP地址,该地址要求可路由,只有指定remote参数时才需要指定。


注意:


加入VGMP后,心跳线的作用包含状态信息备份(会话表和Server-map表)及VGMP状态协商;


华为防火墙在默认情况下放行组播流量(不带remote参数的VGMP报文),禁止单播流量(带remote参数的VGMP报文),所以配置了remote参数,还需要配置Local区域和心跳接口区域之间的安全策略;


配置了虚拟IP地址的接口不能作为心跳口;


如果使用二层接口作为心跳接口,不能直接在二层接口上配置,而是将二层接口加入VLAN,在VLAN中配置心跳接口;


eNSP模拟器中,及时心跳接口之间相连,也必须配置remote参数,否则无法配置;


(3)双机热备的备份方式


双击热备的备份方式包括以下三种:


**自动备份:**该模式下,和双机热备有关的配置命令只能在主用设备上配置,并自动同步到备用设备中,主用设备自动将状态信息同步到备用设备中,该模式是华为防火墙的默认开启模式,主要应用于热备模式;


**手工批量备份:**该模式下,主用设备上所有的配置命令和状态信息,只有在手工指定批量备份命令时才会自动同步到备用设备,该模式主要应用于主、备设备配置不同步,需要立即进行同步的场景中;


**快速备份:**该模式下,不同步配置命令,只同步状态信息。在负载均衡方式的双机热备环境中,该模式必须启用,以快速更新状态信息;


(1)开启双击热备功能


[USG6000V1]hrp enable


HRP_S[USG6000V1]                    //开启双机热备后,提示符发生变化


(2)配置自动备份模式


HRP_M[USG6000V1]hrp auto-sync


开启双机热备后,执行可以同步的命令时会有(+B)的提示


HRP_M[USG6000V1]security-policy  (+B)


(3)配置手工批量备份模式


HRP_Mhrp sync config                                             //表示手工同步命令配置


HRP_Mhrp sync connection-status                          //表示手工同步状态信息


//注意,此命令是在用户视图下执行的


(4)配置快速备份模式


HRP_M[USG6000V1]hrp mirror session enable


(4)连接路由器时的双机热备


当配置双机热备上游或下游是交换设备时,可以通过VRRP检测接口或设备的状态,但是当上游或下游设备是路由器时,VRRP无法正常运行(VRRP依靠组播实现故障切换)。华为防火墙的做法是监控其接口状态,并配合OSPF实现流量切换。

华为交换机

通过接口直接加入VGMP组中,当接口故障时(即使对端设备故障,本端接口的物理特性也将关闭),VGMP会感知接口状态变化,从而降低VGMP组的优先级,从Active状态切换至Stabdby状态。而之前的Standby组提升为Active状态。而处于Standby的VGMP组在发布OSPF路由时,会自动将cost值增加65500,通过OSPF的自动收敛,*终将流量引导至Active组设备中。


四、实现防火墙双机热备的配置


实验拓扑


案例实施:


(1)防火墙接口配置IP地址,并加入各自的区域中,并设置相应的安全策略


[FW1]int g1/0/0


[FW1-GigabitEthernet1/0/0]ip add 10.1.1.101 24


[FW1-GigabitEthernet1/0/0]int g1/0/1


[FW1-GigabitEthernet1/0/1]ip add 172.16.1.1 24


[FW1-GigabitEthernet1/0/1]int g1/0/2


[FW1-GigabitEthernet1/0/2]ip add 192.168.1.101 24


[FW1-GigabitEthernet1/0/2]quit


[FW1]firewall zone untrust


[FW1-zone-untrust]add int g1/0/0


[FW1-zone-untrust]quit


[FW1]firewall zone dmz


[FW1-zone-dmz]add int g1/0/1


[FW1-zone-dmz]quit


[FW1]firewall zone trust


[FW1-zone-trust]add int g1/0/2


[FW1-zone-trust]quit


[FW1]security-policy


[FW1-policy-security]rule name trust_to_untrust


[FW1-policy-security-rule-trust_to_untrust]source-zone trust


[FW1-policy-security-rule-trust_to_untrust]destination-zone untrust


[FW1-policy-security-rule-trust_to_untrust]action permit


//配置安全策略:内部流量可以到外部


[FW1-policy-security-rule-trust_to_untrust]quit


[FW1-policy-security]rule name local_to_dmz


[FW1-policy-security-rule-local_to_dmz]source-zone local


[FW1-policy-security-rule-local_to_dmz]destination-zone dmz


[FW1-policy-security-rule-local_to_dmz]action permit


//配置安全策略:从防火墙本身可以到DMZ区域(建立心跳线)


[FW1-policy-security-rule-local_to_dmz]quit


[FW1-policy-security]quit


//FW2的配置与FW1几乎是一模一样的,这里就不多说了


//注意FW2上也需设置相同的规则


(2)配置VRRP备份组


FW1的配置如下:


[FW1]int g1/0/2


[FW1-GigabitEthernet1/0/2]vrrp vrid 1 virtual-ip 192.168.1.100 active


[FW1-GigabitEthernet1/0/2]int g1/0/0


[FW1-GigabitEthernet1/0/0]vrrp vrid 2 virtual-ip 10.1.1.100 active


FW2的配置如下:


[FW2]int g1/0/2


[FW2-GigabitEthernet1/0/2]vrrp vrid 1 virtual-ip 192.168.1.100 standby


[FW2-GigabitEthernet1/0/2]int g1/0/0


[FW2-GigabitEthernet1/0/0]vrrp vrid 2 virtual-ip 10.1.1.100 standby


(3)配置心跳接口


[FW1]hrp int g1/0/1  remote 172.16.1.2


//FW1指定心跳接口,并指定对端接口IP地址


[FW2]hrp int g1/0/1 remote 172.16.1.1


//FW同上,这就是为什么防火墙需要设置从本地到DMZ区域的策略


(4)启用双机热备


[FW1]hrp enable


HRP_S[FW1]


//FW1的配置,命令提示符出现了变化


[FW2]hrp enable


HRP_S[FW2]


//FW2同上


(5)配置备份方式


HRP_S[FW1]hrp auto-sync


//配置自动备份


HRP_S[FW2]hrp auto-sync


(6)配置检查及验证①查看双机热备的状态信息


HRP_M[FW1]display hrp stateRole: active, peer: standby                            //本端状态为Active,对端为StandbyRunning priority: 45000, peer: 45000            //本端优先级为45000,对端为45000Core state: normal, peer: normalBackup channel usage: 0.00%Stable time: 0 days, 0 hours, 9 minutesLast state change information: 2019-10-26 6:29:53 HRP core state changed, old_s


tate = abnormal(active), new_state = normal, local_priority = 45000, peer_priori


ty = 45000.


②查看心跳接口状态


HRP_M[FW1]display hrp interface GigabitEthernet1/0/1 : running


③两台PC配置IP地址及网关(虚拟地址),用PC1pingPC2

④查看防火墙的会话表


HRP_M[FW1]display firewall session table Current Total Sessions : 2udp  : public --> public  172.16.1.2:49152 --> 172.16.1.1:18514udp  : public --> public  172.16.1.1:49152 --> 172.16.1.2:18514


⑤PC1持续pingPC2,模拟FW1接口故障


HRP_M[FW1]int g1/0/2(+B)


HRP_M[FW1-GigabitEthernet1/0/2]shutdown

⑥查看FW2双击热备的状态


HRP_M[FW2]display hrp stateRole: active, peer: standby (should be "standby-active")               //状态发生了变化


Running priority: 45000, peer: 44998                                             //FW1的优先级减2Core state: abnormal(active), peer: abnormal(standby)Backup channel usage: 0.00%Stable time: 0 days, 0 hours, 1 minutesLast state change information: 2019-10-26 6:49:06 HRP core state changed, old_s


tate = normal, new_state = abnormal(active), local_priority = 45000, peer_priori


ty = 44998.


实验完成


相关标签:

相关产品: