freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

双机热备(HA)在工业场景的应用
2023-04-03 18:56:49
所属地 北京
在工业生产环境的关键节点上,如果只有一台工业防火墙,无论宣称的有多么可靠,都必然存在单点故障风险而导致业务中断,六方云专家建议,此时需要使用双机热备(HA)组网。在双机热备(HA)组网中,当一台工业防火墙出现故障时,业务流量能平滑地切换到另一台工业防火墙上,保障生产业务流量不中断,使客户完全感知不到出现过网络故障。

场景一:客户规划将现有的2台路由器更换为2台工业防火墙,在不改变网络拓扑的情况下增加安全性,同时2台二层交换机位置和配置均保持不变,此种组网方式下双机热备(HA)应该如何部署?

1.png

场景二:客户规划将现有的2台路由器更换为2台工业防火墙,在不改变网络拓扑的情况下增加安全性,同时2台三层交换机位置和配置均保持不变,此种组网方式下双机热备(HA)应该如何部署?

2.png

场景三:客户规划将现有的1台路由器更换为2台工业防火墙,在不改变网络拓扑的情况下增加安全性,同时2台二层交换机位置和配置均保持不变,此种组网方式下双机热备(HA)应该如何部署?

3.png

场景四:客户规划在现有的2台二层交换机之间部署2台工业防火墙,在不改变网络拓扑的情况下增加安全性,同时2台二层交换机位置和配置均保持不变,此种组网方式下双机热备(HA)应该如何部署?

4.png

场景五:客户规划在现有的2台三层交换机之间部署2台工业防火墙,在不改变网络拓扑的情况下增加安全性,同时2台三层交换机位置和配置均保持不变,此种组网方式下双机热备(HA)应该如何部署?

5.png

01.双机热备(HA)介绍

1、什么是双机?

双机,是相对于单机来说的。单机容易形成单点故障,用两台设备来进行可用性的服务能力建设,也称为双机高可用。双机高可用的初衷是业务不间断运行,现在也用来应对高并发业务处理等服务。

2、什么是热备?

热备,是相对于冷备来说的。冷备恢复业务需要手动修改IP,甚至是重新连线。恢复过程类似于网络割接,业务恢复时间依赖于人的手速。

3、什么是HA?

HA(High Availability)高可用,初衷是为了满足业务不间断运行方面的服务能力的建设,可用性99%(年停机时间3.65天),可用性99.9%(年停机时间8.76小时),可用性99.99(年停机时间52.56分钟)。工业现场对可用性的要求是100%,可以有计划的正常业务暂停,但不能出现非预期的异常业务中断。否则极易导致经济损失及人员伤亡,造成的损失可能难以估量或无法承受。

02.解决方案介绍

1、 场景一解决方案介绍

① 需求:将2台路由器更换为2台工业防火墙,不改变网络拓扑及现有设备配置,进行双机热备(HA)部署。

6.png

② 方案

方案1:工业防火墙采用路由模式部署,双机热备(HA)采用主备备份方式。

方案2:工业防火墙采用路由模式部署,双机热备(HA)采用主主负载方式。

③ 原理

方案1:主备备份方式,FW1将VRRP11和22的优先级都设置为100,FW2将VRRP11和22的优先级都设置为50,优先级为100的FW1成为VRRP11和12的主,所有流量都流经FW1处理。

方案2:主主负载方式,FW1将VRRP11优先级设置为100,VRRP22优先级设置为50。FW2将VRRP11优先级设置50,VRRP22优先级设置为100。

当上位机1访问PLC1时,走VRRP22优先级为100的FW2,流量从PLC1返回的时,走VRRP11优先级为100的FW1,此时流量就同时分担到了FW1和FW2。

2、场景二解决方案介绍

① 需求:将2台路由器更换为2台工业防火墙,不改变网络拓扑及现有设备配置,进行双机热备(HA)部署。

7.png

② 方案

方案1:工业防火墙采用路由模式部署,与交换机之间运行OPSF,双机热备(HA)采用主备备份方式。

方案2:工业防火墙采用路由模式部署,与交换机之间运行OPSF,双机热备(HA)采用主主负载方式。

③ 原理

方案1:主备备份方式,此时备墙不建立OSPF邻居,主墙故障时备墙重新建立OSPF邻居。

方案2:主主负载方式,此时两台墙的负载分担完全由OSPF接管,按照动态路由协议流转。

3、场景三解决方案介绍

① 需求:将1台路由器更换为2台工业防火墙,不改变网络拓扑及现有设备配置,进行双机热备(HA)部署。

8.png

② 方案:工业防火墙采用路由模式部署,FW1与FW2业务口的IP地址相同,双机热备(HA)只能采用主备备份方式,某些厂商也把这种模式称为镜像模式。称为镜像模式的原因是,因为除了心跳口地址外,其他配置几乎一模一样,可以把两台墙看成是一台墙。为了便于大家理解,我就不引入新的概念了,全文依然是只有主备备份方式和主主负载方式。

③ 原理:主备备份方式,此时FW1与FW2同一时间,只有一台工业防火墙在工作。双机热备(HA)形成之后,所有配置(包括地址、路由、策略等)都只需在一台工业防火墙上配置,然后配置会自动备份给另外一台工业防火墙。

3、场景四解决方案介绍

① 需求:在2台交换机之间部署2台工业防火墙,不改变网络拓扑及现有设备配置,进行双机热备(HA)部署。

9.png

② 方案:工业防火墙采用透明桥模式部署,双机热备(HA)采用主备备份方式。

③ 原理:主备备份配置时,备墙不参与RSTP计算,也不透传BPDU,交换机没有阻塞接口,防环机制由备墙承担。因为备墙不进行业务转发,所以最终效果是主备备份效果。

10.png

主主负载配置时,备墙不参与RSTP计算,但是透传BPDU,交换机有阻塞接口,防环机制由交换机管理。因为连接交换机阻塞接口的墙不转发业务,所以效果也是主备备份效果。11.png

4、场景五解决方案介绍

① 需求:在2台交换机之间部署2台工业防火墙,不改变网络拓扑及现有设备配置,进行双机热备(HA)部署。

12.png

② 方案:工业防火墙采用透明桥模式部署,双机热备(HA)采用主主负载方式。

③ 原理:工业防火墙工作在透明桥模式,数据通过相关检查后,会直接进行透传转发。业务的负载分担主要是由链路捆绑技术来控制,可以配置基于源/目的+IP/MAC的组合方式将流量分散到不同的链路上,避免流量都走同一条路径造成流量的拥塞;双机热备(HA)起到了辅助配合的效果,比如通过会话快速备份保证来回路径不一致时业务仍正常持续转发。13.png

03.典型案例-场景一

1、任务说明

在2台二层交换机之间部署工业防火墙,上位机与PLC位于不同网段,不改变网络拓扑及现有设备配置,工业防火墙采用路由模式部署。

14.png

方案1:工业防火墙采用路由模式部署,双机热备(HA)采用主备备份方式。

方案2:工业防火墙采用路由模式部署,双机热备(HA)采用主主负载方式。

2、配置说明① 客户环境预配关键信息:

15.png

② 双机热备(HA)主备备份方式的关键配置:

FW1双机热备(HA)配置:

16.png

FW2双机热备(HA)配置:

17.png

③ 双机热备(HA)主主负载方式的关键配置:

FW1双机热备(HA)配置:

18.png

FW2双机热备(HA)配置:

19.png

3、验证说明

① 方案1:主备备份方式,ICMP(ping)验证,故障切换ping不丢包

分别在FW1与FW2抓包:正常时业务都走FW1

其中,10.2.2.10是上位机1,10.1.1.10是PLC1

20.png

FW1故障时业务流量平滑切换到FW2,在21:15:46时FW1的流量结束,21:15:47时流量已切换到FW2上,此切换过程在1s以内完成了。

21.png

22.png

故障切换时验证TCP(ssh/telnet)业务同样不会出现中断。

上位机1(10.2.2.10)ssh PLC1(10.1.1.10),FW1故障,连接不中断。

上位机1(10.2.2.10)telnet PLC2(10.1.1.20),FW1故障,连接不中断。

23.png

② 方案2:主主负载方式,ICMP(ping)验证,故障切换ping不丢包

在FW1与FW2抓包:正常时request走FW2,reply走FW1

其中,上位机1是10.2.2.10,PLC1是10.1.1.10

24.png

FW1故障时业务流量平滑切换到FW2,在18:47:11时FW1的流量结束,18:47:12时流量已切换到FW2上,此切换过程在1s以内完成了

25.png

26.png

故障切换时验证TCP(ssh/telnet)业务同样不会出现中断

上位机1(10.2.2.10)ssh PLC1(10.1.1.10),FW1故障,连接不中断

上位机1(10.2.2.10)telnet PLC2(10.1.1.20),FW1故障,连接不中断

27.png

4、主备备份方式和主主负载方式 ,产品设计和实现应该注意什么?

主备备份方式,应该注意工业防火墙上VRRP同步切换的问题,即在同一台工业防火墙上所有VRRP应该保持状态一致。假如工业防火墙上的VRRP未进行状态同步切换,当FW1的G0/0/2接口故障时,VRRP11发生状态切换。FW1的VRRP11状态切换成Fault状态,同时FW2的VRRP11切换成Active状态。

这样FW2成为VRRP11中的主,并向SW3发送免费ARP报文,刷新SW3中的MAC表项。此时PLC1访问上位机1的报文就通过FW2转发了。但是由于FW1与SW4之间的链路是正常的,所以VRRP22的状态是不变的,FW1仍然是VRRP22的主,而FW2是VRRP22的备。

因此上位机1返回给PLC1的回程报文依然会转发给FW1,而FW1的下行接口GE0/0/2是故障的,所以FW1只能丢弃此回程报文,这将导致业务流量中断。

主主负载方式,相对与主备备份方式,我觉得在产品设计上最容易被忽视的是会话快速备份,会话快速 备份功能可以解决来回路径不一致场景时,可能把第一个回包丢弃的问题,如下图所示:28.png

5、熟悉传统墙的小伙伴,也许会想到一种比较老的负载方法,这里说一下新老负载分担的区别

新负载分担,FW1有2个VRRP(VRRP11网关1.254和VRRP22网关2.254),每个区域只需要设置1个网关(PLC1和PLC2网关都是1.254)就可以有负载分担效果。

老负载分担,FW1有4个VRRP(VRRP11网关1.254、VRRP1网关1.253、VRRP22网关2.254、VRRP2网关2.253),每区域需要设置2个网关(PLC1网关为1.254、PLC2网关为1.253)才可以有负载分担效果。

29.png

老负载分担是有一定局限性的,区域内的主机有2个网关,意味着一部分PLC设置网关A,一部分PLC设置网关B,这在工业场景几乎是不可以接受的。如果是新规划的客户环境,应该会有一定的实施空间,但后面的扩展性非常不佳,所以不太适合工业场景。

04.典型案例-场景二

1、任务说明

在2台三层交换机之间部署工业防火墙,上位机与PLC位于不同网段,不改变网络拓扑及现有设备配置,工业防火墙采用路由模式部署。

30.png

方案1:工业防火墙采用路由模式部署,与交换机之间运行OPSF,双机热备(HA)采用准备备份方式。

方案2:工业防火墙采用路由模式部署,与交换机之间运行OPSF,双机热备(HA)采用主主负载方式。

2、配置说明① 客户环境预配关键信息:

31.png

② 双机热备(HA)主备备份方式的关键配置:

FW1双机热备(HA)配置:

32.png

FW2双机热备(HA)配置:

33.png

③ 双机热备(HA)主主负载方式的关键配置:

FW1双机热备(HA)配置:


34.png

FW2双机热备(HA)配置:

35.png

3、配置心跳口需要注意什么?

① 两台墙的心跳口采用直连的形式对接,避免备份报文从其他设备转发,也起到一定程度的防重放攻击;这也是有些厂商支持心跳口不直连(加一层UDP封装),但仍会强烈建议心跳口直连的原因。

② 由于心跳口不需要跑业务,所以心跳口无需配置度量值,也不要运行OSPF等路由协议。

4、什么时候需要配置抢占?

① 当两台墙性能有差距,应在性能较优的墙上配置抢占,保证业务始终在高性能设备上转发。实际这种情况是很少发生的,因为双机热备(HA)各厂商基本都会要求两台设备一模一样(也包括性能)。

② 当两台墙性能一样时,谁作为主墙都没有转发瓶颈时,可以不配置抢占,因为切换次数少对保持业务稳定有一定好处的。实际对业务的影响也并不会太大,调优的时候可以作为一个参考项。

05.典型案例-场景三

1、任务说明

在2台三层交换机之间部署工业防火墙,上位机与PLC位于不同网段,尽量不改变现有的网络拓扑和配置,工业防火墙采用路由模式部署。

36.png

方案:工业防火墙采用路由模式部署,FW1与FW2业务口的IP地址相同,双机热备(HA)只能采用主备备份方式。

2、配置说① 客户环境预配关键信息:

37.png

② 双机热备(HA)主备备份方式的关键配置:

FW1双机热备(HA)配置:

38.png

FW2双机热备(HA)配置:

39.png

3、验证说明① 主备备份方式,ICMP(ping)验证,故障切换ping丢1个包(延迟4s)

分别在FW1与FW2抓包:正常时业务都走FW1

其中,10.2.2.10是上位机1,10.1.1.10是PLC1

40.png

FW1故障时业务流量平滑切换到FW2,在11:29:39时FW1的流量结束,11:29:44时流量已切换到FW2上,此切换过程在5s以内完成了(ping丢1个包)

41.png

42.png

故障切换时验证TCP(ssh/telnet)业务同样不会出现中断。

上位机1(10.2.2.10)ssh PLC1(10.1.1.10),FW1故障,连接不中断。

上位机1(10.2.2.10)telnet PLC2(10.1.1.20),FW1故障,连接不中断。

43.png

4、双机的两台工业墙必须是同一个厂商码?

必须是,因为要求太苛刻了。准确来说同厂商的不同型号也不行,因为可能硬件型号、接口编号等有变化,或者软件版本、配置命令等有变化。所以,不同厂商互相做双机热备(HA)就更是不可能了。

5、如果故障切换后,客户业务异常(业务中断or业务变慢),可能是什么原因导致的?

六方云专家建议从下面3个方面分析:

① 检查状态切换是否成功。旧备墙接替旧主墙成为新主,说明状态切换成功。

状态切换失败的可能原因有:没有配置心跳口、心跳口故障、心跳链路不通、心跳口所在接口卡故障、CPU或Memory负载严重、心跳口流量超过带宽等。

② 检查信息同步是否成功。

业务相关的配置和状态完整,说明信息同步成功。信息同步失败的可能原因有:未开启会话快速备份功能、硬件配置不一致、软件版本不一致、关键配置不一致等。

③ 检查流量引导是否成功。

接口能抓到业务相关的报文,说明流量引导成功。上下行是二层交换机场景,流量引导失败的可能原因有:主机网关配置为墙地址(应为VRRP的vIP),或交换机启用了防ARP欺骗(例ARP表项固化等特性应关闭)等。

上下行是三层交换机场景,流量引导失败的可能原因有:路由协议收敛慢导致(例OSPF应调整hello-interval和dead-interval)等。

06. 典型案例-场景四

1、任务说明

在2台二层交换机之间部署工业防火墙,上位机与PLC位于相同网段,尽量不改变现有的网络拓扑和配置,工业防火墙采用透明桥模式部署。

方案:工业防火墙采用透明桥模式部署,双机热备(HA)采用主备备份方式。

2、配置说明① 客户环境预配关键信息:

45.png

② 双机热备(HA)主备备份方式的关键配置:

FW1双机热备(HA)配置:

46.png

FW2双机热备(HA)配置:

47.png

3、验证说明① 主备备份方式,ICMP(ping)验证,故障切换ping丢1个包(抓包延迟4s)

正常时的主备备份效果:所有业务都走FW2

其中,10.1.1.20是上位机1,10.1.1.10是PLC1

48.png

49.png

异常时的主备备份效果:所有业务平滑切换到FW1,10.2.2.20是上位机1,10.1.1.10是PLC1,在21:53:29时FW1的流量结束,21:53:34开始流量已平滑切换到FW1上,此切换过程在5s以内完成了。

50.png

51.png

故障切换时验证TCP(ssh/telnet)业务同样业务不会出现中断。

上位机1(10.1.1.20)ssh PLC1(10.1.1.10),FW2故障,连接不中断。

上位机2(10.2.2.20)telnet PLC2(10.2.2.10),FW2故障,连接不中断。

52.png

4、此场景支持主主负载方式吗?① 不支持,准确来说是配置了主主也没有负载分担效果

因为即使是主主负载方式配置,RSTP也会阻塞交换机的一个端口(阻塞SW4的G1/2)

所以无论是主备备份方式还是主主负载方式,同一时刻都只有一台墙在转发业务。

53.png

5、主备备份方式中,如何保证主备切换时业务不中断?

① 做好配置信息同步,即配置的各种策略(安全策略、NAT策略、ACL策略等)

② 做好会话信息同步,即各种状态化信息(建立的、后续的、返回的、额外的等)

07. 典型案例-场景五

1、任务说明

在2台二层交换机之间部署工业防火墙,上位机与PLC位于不同网段,不改变网络拓扑及现有设备配置,工业防火墙采用路由模式部署。

54.png

方案:工业防火墙采用透明桥模式部署,双机热备(HA)采用主主负载方式。

2、配置说明① 客户环境预配关键信息:

55.png

② 双机热备(HA)关键配置:

FW1双机热备(HA)配置:56.png

FW2双机热备(HA)配置:

57.png

3、验证说明① 主主负载方式,ICMP(ping)验证,故障切换ping不丢包

分别在SW4的1口和2口抓包:正常时上位机1的业务走FW1,上位机2的业务走FW2

SW4的1口抓到:上位机1(10.2.2.10)到PLC1(10.1.1.10)

SW4的2口抓到:上位机2(10.2.2.11)到PLC1(10.1.1.10)

58.png

FW1故障时业务流量平滑切换到FW2,在11:59:12时FW1的流量结束,11:59:13时流量已切换到FW2上,此切换过程在1s以内完成。

59.png

60.png

故障切换时验证TCP(ssh/telnet)业务同样不会出现中断。

上位机1(10.2.2.10)ssh PLC1(10.1.1.10),FW1故障,连接不中断。

上位机1(10.2.2.10)telnet PLC2(10.1.1.20),FW1故障,连接不中断。

61.png

4、工业防火墙透明桥模式时,上下三层交换机运行OSPF,可以使用主备备份方式吗?

① 此场景不支持主备备份方式,只支持主主负载方式(负载分担)。

② 如果墙工作于主备备份方式,备墙上的接口将被禁用,连接交换机的接口就无法进行通信,无法建立OSPF路由。这样当主备切换时,新的主墙(原备墙)的接口被启用,它的上下行交换机才开始新建OSPF路由,而OSPF路由的新建需要一定的时间,所以会导致业务的暂时中断,工业场景中不太容易被接受。

5、大家经常纠结的问题是,应该选择主备备份方式还是主主负载方式,有什么参考依据吗?

① 如果两种方式都能正常承担业务流量,且客户又没有特殊需求,一般推荐部署主备备份方式。

② 如果客户组网的其他部分(核心交换机和接入交换机)部署了负载分担,那么客户一般也会要求工业防火墙部署成主主负载方式。

③ 如果工业防火墙承担业务转发时,资源(CPU、Memory、Disk)和规格(性能指标)经常达到了70%以上,建议调整成主主负载方式。

④ 当工业防火墙启用APP、IPS、AV等内容安全功能后,性能会有所下降。如果一台墙的转发性能下降到低于业务总容量时,则必须调整成主主负载方式。

六方云专家总结:

双机热备(HA)作为“万无一失”的方案选项,除了要考虑各种场景的支持,机制本身的可靠性需要得到更高的重视。当工业防火墙产品内部出现错误,导致不转发业务等情况时,必须能够做出故障切换。这里说的内部错误可以包括,但不限于:内存泄漏、死循环、管理平面或数据平面异常、软件狗或硬件狗饿死、芯片错误等等。

双机热备(HA)组网部署,要使用缺省配置开始操作,避免因配置不一致导致错误。同时,在实施完毕后要做故障切换,验证备墙有能力接替业务转发工作。故障模拟可以包括down掉接口、拔掉网线、整机重启等,在验证过程中业务流量能平滑引导到备墙。故障恢复后主墙可以成功进行抢占,切回来的业务仍能稳定运行。

如此重视实施部署时的故障切换,是因为后续没有机会再切换试效果了。为避免真出现问题时出现互相扯皮现象,在离开客户现场前做故障切换至关重要,此时仍处于设备上线的网络割接时间段内,可以有相对充足的时间进行验证,能为后续现网出现问题时铺平道路,也能让大家做到心里有底。

# 网络安全 # 工控安全 # 工业互联网安全
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录