1. 概述

    HA问题是建设TCP/IP网络需要考虑的一个重要问题。当因为某个设备出现宕机时,如何保证网络依旧畅通是依赖于关键业务的公司的网络建设的核心。所有流量都要经过安全网关,设计网络让安全网关不会成为单点故障,同时还需要保证故障时业务系统得到安全防护,避免网络***给公司带来不可估计的损失。

Fortinet公司作为安全资深公司,在不断地发展安全设备的功能和性能时,同样为高可靠性提供了多种解决方案,VRRP、会话同步和HA解决方案(FGCP)。强大和灵活的高可用性解决方案是很多运行着关键业务的网络所必需的。Fortinet提供的高可用性解决方案可以适用于多种网络环境。


2. HA (FGCP)

    FortiGate通过FGCP协议支持完善的HA(高可用性)模式,包括A-P(热备式)HA和A-A(负载均衡式)HA,并且最高可以支持32台FortiGate的HA集群,对网络的高可用性提供了最高级别的保证。使用热备式HA时,FortiGate可以在3秒钟之内完成主从设备的切换,且会话状态可以保持;使用负载均衡式HA时,多台FortiGate同时工作,分担流量,可以大幅度提高网络过滤的性能。



    FortiGate在透明模式和路由(NAT)模式下均支持HA,HA心跳口可以和其他通信口共用,也支持HA口的冗余。当主HA口故障或主心跳线中断时,备份HA口还可以继续传输心跳信息。

    FortiGate HA集群中的设备根据设备优先级的大小协商产生主机和备机,优先级高的设备成为HA组中的主机,优先级低的设备成为HA组中的备机。

    主机和备机具有完全相同的接口地址、完全相同的配置。

    主机和备机的配置通过心跳线实时同步,管理员的配置针对整个HA集群,无需单独配置每一台设备。

    由于FortiGate是状态检测设备,过滤网络流量时需要检查会话状态表。主机和备机的会话状态表通过心跳线实时同步,因此在发生设备故障切换时,备机上也会具有与主机相同的会话表,因此所有已经经过设备建立的会话可以无缝切换,无需重新建立。

    主机和备机的相应接口具有完全相同的IP地址,并使用同一个虚拟MAC地址,在发生故障切换时不会产生IP或ARP问题。

当主机的任意接口或设备本身发生故障时,产生HA设备切换,主机变为standby状态,备机变为work状态,自动接替主机工作。由于会话状态均在主备机之间同步,因此所有访问自动切换到备机上进行,所有已建立会话无需重新连接。

FortiGate HA机制还支持ping检测,可以在接口上启用ping服务器IP地址,当该IP地址不可达时,即使接口仍然处于up状态,仍然可以判断为链路失败,从而进行HA切换,这种设计在接口状态检测的基础上进一步提高了整个系统的可靠性。

    FortiGate还支持全冗余(Full-mesh)方式HA,如下图所示,进一步提升系统的可靠性。



3. TCP会话同步

    有的网络已经部署了负载均衡设备。通过负载均衡设备将流量分配到不同的FortiGate上进行处理。这些FortiGate通过会话同步的功能将TCP会话告知所有的FortiGate。当某个FortiGate出现故障宕机时,负载均衡设备会将相应的流量转移到其它FortiGate上,这时其他FortiGate上已经拥有会话表的备份,所以现有的连接不会被丢弃。



    与FGCP不同的是,TCP会话同步不要求参与FortiGate设备的配置相同,仅仅是将会话备份一份到所有FortiGate上。另外一点不同的是,FGCP是由FortiGate自身来完成流量的分配到不同FortiGate上,而会话同步是由路由器或者负载均衡设备来实现流量的分配。


4. VRRP

    有的网络已经部署了负载均衡设备。通过负载均衡设备将流量分配到不同的FortiGate上进行处理。这些FortiGate通过会话同步的功能将TCP会话告知所有的FortiGate。

FortiGate也支持路由器常用的高可用性解决方案——VRRP。FortiGate可以通过VRRP协议与第三方路由器实现高可用性,这样就可以轻而易举地集成到已经建成的网络中。FortiGate之间可以通过VRRP协议实现多个FortiGate的备份功能。



    如上图所示,当FortiGate与路由器或者其他网络设备实现VRRP构架时,当作为主设备的FortiGate宕机时,从设备通过VRRP协议接管网络,保证网络的畅通。如果从设备是路由器的话,网络流量可以继续转发,但是不再得到安全防护。如果从设备是FortiGate的话,可以通过会话同步功能,实现VRRP从设备和主设备之间的会话同步,这样网络依旧畅通,而且还能继续得到FortiGate的安全防护。