防火墙双机热备(主备模式)
场景
单台防火墙是单点。主备双机热备是最常见的做法:两台一样配置,一台 active 一台 standby,主挂了备自动接管,会话不同步也不丢太多。
这篇讲主备模式(active/standby),不涉及负载分担(active/active),后者配置复杂度高一个量级。
前置条件
- 两台同型号、同版本固件(版本不一致会导致同步失败)
- 每台至少 3 个口:外网、内网、心跳(心跳口直连,不经过交换机)
- 心跳口地址规划好:主
10.0.0.1/24,备10.0.0.2/24 - 业务口的虚拟网关地址定好(例:
192.168.10.254) - 两台先各自配好基础配置并验证单机能通
配置
第一步:两台各自配好基础配置
按 防火墙上线配置(区域与策略) 那篇,把接口、区域、路由、策略、NAT 全部配好。先让单机能正常上网,再做热备。 基础没通就上热备,问题会翻倍。
第二步:配心跳口
主(FW-A):
interface GigabitEthernet1/0/0
ip address 10.0.0.1 255.255.255.0
quit
firewall zone dmz
add interface GigabitEthernet1/0/0
quit
备(FW-B):
interface GigabitEthernet1/0/0
ip address 10.0.0.2 255.255.255.0
quit
firewall zone dmz
add interface GigabitEthernet1/0/0
quit
第三步:启用 HRP(在主机上配)
hrp interface GigabitEthernet1/0/0 remote 10.0.0.2
hrp enable
hrp mirror session enable
hrp enable 之后配置会从主同步到备,所以备机上不要手动改配置。
第四步:业务口配 VRRP
内网口(主):
interface GigabitEthernet1/0/2
vrrp vrid 1 virtual-ip 192.168.10.254 active
quit
外网口(主):
interface GigabitEthernet1/0/1
vrrp vrid 2 virtual-ip 1.2.3.6 active
quit
备机上同样的 VRRP 会自动同步过去,状态是 standby。内网电脑的网关填 192.168.10.254。
验证
display hrp state # 主是 active,备是 standby
display hrp interface # 心跳口状态
display hrp configuration # 同步状态、最后一次同步时间
display vrrp # 业务口 VRRP 角色
关键三项:HRP 状态、VRRP 角色、配置同步时间。
切换测试(在维护窗口做):
# 在主机上手动切主备
hrp switch standby
display hrp state # 确认备机变成 active
切过去后从内网连续 ping 外网,看丢几个包(正常 1~3 个)。
回滚
undo hrp enable
undo hrp interface GigabitEthernet1/0/0
interface GigabitEthernet1/0/2
undo vrrp vrid 1
quit
两台各自变回独立设备,按单机方式工作。
坑
先单机通,再上热备
双机热备会把「配置不一致」和「配置本身有问题」混在一起。 单机都不通的时候上热备,你会花两倍时间也找不到原因。
- 两台必须同版本。差一个小版本就可能同步失败,现象是备机配置一直不更新。
- 心跳口要直连,不能走业务交换机。走交换机的话交换机一抖,两台同时认为对方挂了,容易双主。
- 双主是灾难:两个 active 同时发 ARP、抢地址。出现双主立刻断开其中一台的心跳线,先恢复单机。
hrp mirror session enable是会话同步,不打开的话主备切换所有连接都会断(不只是新连接)。- 备机的接口也要插线并 up,否则切换时链路要重新协商,丢包更多。
- 策略、NAT、路由都是同步的,但证书、License、自定义特征库可能不同步,要单独确认。
- 升级固件要两台一起升,先备后主,中间会有一次切换。
display hrp configuration里看到Configuration synchronization: disabled就说明主备没建立起来,先查心跳口和hrp interface配置。