双机热备技术在防火墙中的应用*
2011-07-26赵开新孙新领
赵开新,孙新领
(河南机电高等专科学校计算机科学与技术系,河南新乡453000)
1 引言
目前,用户对网络可靠性要求越来越高,特别是在一些重点业务入口或接入点上需要保证网络不间断运行,确保企业Internet接入点、银行数据库、服务器等设备之间的不间断网络通讯。防火墙作为安全设备,一般会部署在需要保护的网络和不受保护的网络之间,即位于业务接口点上,在这种业务点上,如果仅使用一台防火墙,无论其可靠性多高,系统都可能会承受由于单点故障而引起的网络中断风险。为了防止单台防火墙出现意外故障而导致整个网络业务中断,可以通过双机热备技术,来提供设备冗余备份机制,从而提高整个网络系统的稳定性和可靠性。
2 双机热备技术
从广义上讲,双机热备就是对于重要的服务,使用两台服务器,互相备份,共同执行同一服务。当一台服务器出现故障时,可以由另一台服务器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务[1]。
双机热备在组网中的应用是在一些重点网络业务入口或接入点部署多台设备形成备份,当主设备出现故障,通过VRRP(Virtual Router Redundancy Protocol)或者动态路由等机制进行切换,实现一台设备故障后流量自动切换到另一台正常工作的设备。
2.1 网络中传统的双机热备方案
网络中传统的备份方案是在关键接入点部署路由器或者交换机等转发设备,由于经过设备的每个报文都是查找转发表进行转发,链路切换后,后续报文的转发不受影响[2]。图1所示为两台路由器组成的备份组:
图1 传统双机热备虚拟路由器示意图
路由器RA、RB组成了一个备份组,相当于一台虚拟路由器,虚拟 IP地址为211.69.1.1/24,备份组内 RA 充当主设备,IP 地址为 211.69.1.2/24,RB 充当备份设备,IP地址为211.69.1.3/24。内网中的所有主机仅仅知道该虚拟 IP地址211.69.1.1/24,而并不知道具体的主用或备用设备的IP地址,因此各主机都将网关配置为去往该虚拟IP地址。于是,内网中的各主机就通过该备份组与外部网络进行通讯。
正常情况下内网的所有主机与外网通讯时,仅通过路由器RA转发,当路由器RA出现故障时,会通过一定的机制,把内网到外网的流量切换到路由器RB,只要路由器RB有正确的路由表,内外网的通讯就不会中断。
2.2 网络中基于防火墙的双机热备方案
如果关键接入点部署的是状态防火墙,由于状态防火墙是基于连接状态的,当用户发起会话时,状态防火墙只会对会话的首包进行检查,如果首包允许通过则会建立一个会话表项,表项里包括源IP、源端口、目的IP、目的端口等信息,只有匹配该会话表项的后续报文或者返回报文才能通过防火墙。如果链路切换后,后续报文找不到正确的表项,会导致当前业务中断。
因此,对于状态防火墙,在链路切换前,必须对会话信息进行主备同步。这样,在主设备故障后能将流量切换到其他备份设备,由备份设备继续处理业务,从而保证了当前会话不被中断。图2所示为两台防火墙组成的备份组。FirewallA和FirewallB之间直接相连的一根线,负责两个防火墙之间会话的同步。
图2 防火墙双机热备示意图
2.3 基于防火墙的双机热备工作模式
2.3.1 主模式
主模式下的两台防火墙,一台作为主设备,另一台作为备份设备。主设备处理所有业务,并将产生的会话信息传送到备份设备进行备份,正常情况下备份设备不处理业务,只用作备份。只有当主设备故障,备份设备接替主设备处理业务,从而保证新发起的会话能正常建立,当前正在进行的会话也不会中断。
2.3.2 负载分担模式
负载分担模式下,两台设备均为主设备,都处理业务,同时又作为另一台设备的备份设备,备份对端的数据流。当一台设备故障后,另一台设备负责全部业务。从而保证新发起的会话能正常建立,当前正在进行的会话也不会中断[3]。
2.4 防火墙双机热备实现机制
2.4.1 数据同步
防火墙设备需要维护每条会话的状态等相关信息,当主设备故障、流量切换到备份设备时,仍要求备份设备上有正确的会话信息才能继续处理会话报文,否则会话报文会被丢弃从而导致会话中断。因此,主设备上会话建立或表项变化时需要将相关信息同步保存到备份设备,以保证主设备和备份设备会话表完全一致,数据同步的方法有两种。
1)批量备份
在两台设备上启用双机备份后,每个防火墙每隔一段时间,把自己已经存在的大量会话表项,一次性同步到另一台设备,这个过程称为批量备份。
2)实时备份
在两台设备上启用双机备份后,每个防火墙在运行的过程中把产生的新表项或表项变化后的结果立即备份到另一台设备,这个过程称为实时备份。
2.4.2 流量切换
双机热备要实现主设备出现故障时,自动切换到备份设备。流量切换的方法有两种,一种是通过VRRP实现流量切换,另一种是通过动态路由实现流量切换。
1)通过VRRP实现流量切换
通过VRRP将局域网中的一组设备配置成一个备份组,这组设备在功能上就相当于一台虚拟设备,局域网内的主机只知道这个虚拟设备的IP地址,通过这个虚拟设备与其他网络进行通讯。备份组中只有一台设备处于活动状态,能够转发报文,成为主设备,其余设备处于备份状态,并随时按照优先级高低做好接替任务准备,成为备份设备。当发现主设备故障时,优先级高的备用设备会当选为新的主设备来接替原来的主设备工作。整个过程对用户来说是透明的,并且自动实现了流量切换,这就是双机热备的主模式。如果将一组设备配置成两个备份组,并且设备在不同备份组中的优先级不同,可以实现双机热备的负载分担模式。
2)通过动态路由实现流量切换
如果从内网到外网有两条不同的路径,动态路由协议会使用算法选取最优的一条路径作为内外网之间的路由。当这条路径故障后,路由协议会从剩余的可用路径中选择最优的一条作为新的路由,从而动态地保证内外网之间的连通。
如图3所示,从内网到外网有两条路径,分别是RB-FirewallA- RA和RB-FirewallB- RA,可以通过配置路由器RA、RB和防火墙FirewallA、FirewallB全为动态路由协议OSPF,并使RA和RB的E1/0端口的cost值小于RA和RB的E1/1端口的cost值,这样在FirewallA正常工作情况下,所有从内网到外网的数据都经过FirewallA,FirewallB并不转发数据,只起到备份的作用,当FirewallA故障后,重新计算路由,找到新的最优路由RB-FirewallB-RA,这样,所有从内网到外网的数据经 FirewallB转发,FirewallA和FirewallB之间的直连线路起到同步会话表项的作用,这样FirewallA和FirewallB就工作在双机热备的主模式。由于OSPF协议支持等值路由,也可以通过配置RA和RB的E1/0和E1/1端口的cost值相同来实现双机热备的负载分担模式。
图3 通过OSPF协议实现流量切换示意图
3 基于防火墙的双机热备典型组网案例
如图4所示,内网可以通过FirewallA或FirewallB两条路径到外网,FirewallA和FirewallB将内网划分为两个区域Trust和DMZ,外网为Untrust区域。FirewallA和FirewallB分别通过端口E1/0连接Trust区域,通过端口E1/1连接DMZ区域,防火墙FirewallA和FirewallB工作在负载分担模式。两防火墙和Trust区域相连的接口组成一个备份组1,拥有虚拟IP地址211.69.1.1/24,Trust区域各主机都将网关配置为去往虚拟 IP 地址 211.69.1.1/24,在备份组 1 中,FirewallA防火墙作为主设备,FirewallB防火墙作为备份设备;两防火墙和DMZ区域相连的接口组成另一备份组2,拥有虚拟 IP 地址 211.69.2.1/24,DMZ 区域各主机都将网关配置为去往虚拟IP地址211.69.2.1/24,在备份组2中,FirewallB防火墙作为主设备,FirewallA防火墙作为备份设备。FirewallA和FirewallB之间的直连线路进行同步两防火墙之间的会话表项。
图4 防火墙双机热备典型案例示意图
SecPathA防火墙关键配置如下。
启动HRP双机热备份功能。
[SecPathA〛hrp enable]
启动HRP实时备份机制。
[SecPathA]hrp auto-sync
创建VRRP备份组,并配置各备份组的虚拟IP地址。
[SecPathA-Ethernet1/0]vrrp vrid 1 virtual-ip 211.69.1.1
[SecPathA -Ethernet1/1]vrrp vrid 2 virtual-ip 211.69.2.1
创建VRRP管理组1,配置VRRP管理组优先级为105,并启动VRRP管理组抢占功能,将备份组1添加到VRRP管理组1中,并指定数据通道为Ethernet1/0。
[SecPathA]vrrp group 1
[SecPathA -vrrpgroup-1]vrrp-group priority 105
[SecPathA-vrrpgroup-1]vrrp-group preempt
[SecPathA -vrrpgroup-1]add interface Ethernet 1/0 vrrp vrid 1 data
创建VRRP管理组2,采用 VRRP管理组缺省优先级,并启动 VRRP管理组抢占功能,将备份组2添加到VRRP管理组2中,并指定数据通道为Ethernet1/1。
[SecPathA]vrrp group 2
[SecPathA-vrrpgroup-2]vrrp-group preempt
[SecPathA -vrrpgroup-2]add interface Ethernet 1/1 vrrp vrid 2 data
SecPathB和SecPathA的配置绝大多数相同,只需修改SecPathB上管理组1优先级为缺省值,管理组2的优先级为105。
4 结束语
随着对网络的可靠性和安全要求越来越高,在目前组网中,双机热备技术在防火墙中的应用越来越广泛。通过主备防火墙之间的批量备份和实时备份,可以快速实现数据同步,通过VRRP或动态路由可以实现主设备故障后,流量快速自动切换到备份设备,从而实现了网络的可靠性和安全性。因此,在以后组网中防火墙的双机热备技术将会有很好的应用前景。
[1] 刘晓杰,黄永佳,等.基于linux的双机热备系统的实现技术[J].计算机应用研究,2007,24(4):254 -257.
[2] 杭州华三通信技术有限公司.H3C网络学院教材(一、二学期)[M].杭州:华三通信技术有限公司,2007.
[3] 杭州华三通信技术有限公司.H3C网络安全技术[M].杭州:华三通信技术有限公司,2010.