实操教程:华为防火墙HRP主备模式完整配置步骤

文章目录


一、为什么要用HRP主备?

当网络是单台防火墙扛流量,一旦设备挂了,整个业务网段直接瘫痪,恢复时间按小时算。后来华为推出HRP主备模式,两台防火墙共用一个业务IP,主设备故障时,备用设备能在秒级内接管业务,RTO(恢复时间目标)能控制在100ms以内,完全满足金融、运营商这类高可用场景的要求。

和VRRP不同,HRP不仅能实现网关冗余,还能同步防火墙的会话表、NAT表、攻击防御策略这些业务配置。VRRP只是网关层面的切换,切换后新的主设备需要重新建立会话,会导致业务中断几秒钟;而HRP是会话级别的同步,切换后业务几乎无感知。

二、HRP的核心原理

HRP主备模式下,两台防火墙分为主用设备(Active)和备用设备(Standby)

  • 主用设备处理所有业务流量,同时把会话表、NAT表、用户配置这些数据通过心跳链路同步到备用设备
  • 备用设备处于热备状态,实时接收主用设备的同步数据,但不处理业务流量
  • 当主用设备故障(接口down、设备断电、CPU利用率100%),备用设备会在检测到故障后自动切换为主用,接管所有业务

HRP有两种心跳链路:

  1. 专用心跳链路:用单独的物理接口连接两台防火墙,只传输HRP同步数据,不处理业务流量,可靠性最高(现网的主要模式)
  2. 业务心跳链路:复用业务接口传输HRP数据,适合没有多余物理接口的场景,但会占用业务带宽,可靠性不如专用心跳

华为HRP用的是VRRP作为状态检测机制,通过VRRP的Master/Backup状态来决定HRP的主备角色。所以配置HRP前,必须先配置VRRP。

三、完整配置流程

0.参数规划

  • 物理接口:
    • 主设备:G0/0/0(业务口,连接核心交换机)、G0/0/1(心跳口,连接备用设备G0/0/1)、G0/0/2(管理口)
    • 备用设备:G0/0/0(业务口,连接核心交换机)、G0/0/1(心跳口,连接主设备G0/0/1)、G0/0/2(管理口)
  • IP规划:
    • 业务网段:192.168.1.0/24,VRRP虚拟IP:192.168.1.254
    • 心跳网段:10.0.0.0/30,主设备心跳IP:10.0.0.1,备用设备心跳IP:10.0.0.2
    • 管理网段:172.16.0.0/24,主设备管理IP:172.16.0.10,备用设备管理IP:172.16.0.11

1.配置基础网络

先把两台设备的接口IP、路由、管理配置好,确保两台设备能互相通信,主设备能访问核心交换机。

主设备配置:

bash 复制代码
# 配置管理口
interface GigabitEthernet 0/0/2
 ip address 172.16.0.10 255.255.255.0
 service-manage all permit

# 配置业务口
interface GigabitEthernet 0/0/0
 ip address 192.168.1.1 255.255.255.0

# 配置心跳口
interface GigabitEthernet 0/0/1
 ip address 10.0.0.1 255.255.255.252

# 配置静态路由,指向核心交换机
ip route-static 0.0.0.0 0.0.0.0 192.168.1.253

service-manage all permit 命令在华为防火墙中用于允许管理员通过该接口使用所有管理协议访问防火墙设备。

备用设备配置相同(IP根据规划),就不再列出。

2.配置VRRP

VRRP是HRP主备切换的触发机制,必须在业务口和心跳口都配置VRRP组。

主设备配置:

bash 复制代码
# 业务口VRRP组1,优先级120(比备用设备高20,确保成为主用)
interface GigabitEthernet 0/0/0
 vrrp vrid 1 virtual-ip 192.168.1.254
 vrrp vrid 1 priority 120
 # 配置抢占模式,延迟30秒抢占,避免网络抖动导致频繁切换
 vrrp vrid 1 preempt-mode timer delay 30
 quit

# 心跳口VRRP组2,优先级120
interface GigabitEthernet 0/0/1
 vrrp vrid 2 virtual-ip 10.0.0.3
 vrrp vrid 2 priority 120
 vrrp vrid 2 preempt-mode timer delay 30
 quit

备用设备配置:

bash 复制代码
# 业务口VRRP组1,优先级100(默认值)
interface GigabitEthernet 0/0/0
 vrrp vrid 1 virtual-ip 192.168.1.254
 vrrp vrid 1 priority 100
 vrrp vrid 1 preempt-mode timer delay 30
 quit

# 心跳口VRRP组2,优先级100
interface GigabitEthernet 0/0/1
 vrrp vrid 2 virtual-ip 10.0.0.3
 vrrp vrid 2 priority 100
 vrrp vrid 2 preempt-mode timer delay 30
 quit

这里要注意,VRRP的抢占延迟一定要配置,否则当主设备恢复后,会立刻抢占回主用角色,导致业务再次切换,影响用户体验。一般配置30秒以上,给网络足够的恢复时间。

3.启用HRP并配置心跳链路

现在开始配置HRP,先启用HRP功能,然后指定心跳链路。

主设备配置:

bash 复制代码
# 启用HRP功能
hrp enable

# 指定心跳链路为G0/0/1,同时启用会话同步、配置同步
hrp interface GigabitEthernet 0/0/1 remote 10.0.0.2
# 同步所有配置,包括接口IP、路由、策略等
hrp config sync all
# 同步会话表、NAT表、ASPF表这些业务数据
hrp session enable
# 配置HRP优先级和VRRP联动,当VRRP组1故障时,HRP优先级降低20,触发切换
hrp track vrrp vrid 1 reduce 20

备用设备配置:

bash 复制代码
# 启用HRP功能
hrp enable

# 指定心跳链路为G0/0/1,指向主设备的心跳IP
hrp interface GigabitEthernet 0/0/1 remote 10.0.0.1
# 同步所有配置
hrp config sync all
# 同步会话表
hrp session enable
# 配置HRP优先级和VRRP联动
hrp track vrrp vrid 1 reduce 20

如果用业务接口作为心跳链路,必须在业务接口上配置HRP的心跳IP,同时要确保业务接口的安全策略允许HRP协议通过。HRP用的是UDP 10000端口,所以安全策略要允许这个端口的流量。

4.配置业务接口联动

为了避免主设备业务口故障但设备本身正常的情况,需要配置HRP和业务接口的联动。当主设备的业务口down了,HRP会自动降低优先级,触发主备切换。

主设备配置:

bash 复制代码
# 当G0/0/0接口down时,HRP优先级降低20
hrp interface GigabitEthernet 0/0/0 track priority 20

备用设备配置:

bash 复制代码
# 备用设备同样配置接口联动
hrp interface GigabitEthernet 0/0/0 track priority 20

四、验证配置是否生效

配置完成后,一定要验证主备状态、配置同步、切换功能是否正常。

1. 查看HRP状态

在主设备上执行:

bash 复制代码
display hrp state

正常输出应该是:

bash 复制代码
HRP_Mdis hrp state
HRP Work Mode: Active
HRP Connection Status: Up
HRP Peer IP: 10.0.0.2
HRP Sync Status: Success
HRP Priority: 120
HRP Preempt Delay: 30s
HRP Track Interface: GigabitEthernet 0/0/0 (Up)
HRP Track VRRP: Vrid 1 (Master)

在备用设备上执行:

bash 复制代码
display hrp state

正常输出应该是:

复制代码
HRP_Sdis hrp state
HRP Work Mode: Standby
HRP Connection Status: Up
HRP Peer IP: 10.0.0.1
HRP Sync Status: Success
HRP Priority: 100
HRP Preempt Delay: 30s
HRP Track Interface: GigabitEthernet 0/0/0 (Up)
HRP Track VRRP: Vrid 1 (Backup)

注意状态:Active/Standby,同时VRRP的状态是:Master/Backup

2. 验证配置同步

在主设备上新增一条安全策略:

bash 复制代码
security-policy
 rule name permit_business
  source-zone trust
  destination-zone untrust
  source-address 192.168.1.0 255.255.255.0
  action permit
 quit

然后在备用设备上执行display security-policy rule name permit_business,如果能看到这条策略,说明配置同步正常。

3. 验证主备切换

手动断开主设备的业务口G0/0/0,然后在备用设备上查看HRP状态:

bash 复制代码
display hrp state

如果备用设备的状态变为HRP Work Mode: Active,说明切换成功。然后恢复主设备的业务口,等待30秒后,主设备会自动抢占回主用角色。

五、高级配置与优化

1. 配置HRP会话同步过滤

如果不需要同步所有会话,可以配置会话同步过滤,只同步指定的会话类型,减少心跳链路的带宽占用:

bash 复制代码
# 只同步TCP和UDP会话
hrp session filter tcp udp

2. 配置HRP批量同步

当备用设备刚上线时,主设备会把所有配置和会话同步过去,如果会话数很多,会占用大量带宽。可以配置批量同步的速率限制:

bash 复制代码
# 限制批量同步的速率为1000个会话/秒
hrp session batch sync speed-limit 1000

3. 配置HRP状态检测

可以配置HRP的状态检测间隔和超时时间,调整故障检测的灵敏度:

bash 复制代码
# 配置HRP心跳包发送间隔为1秒,超时时间为3秒
hrp timer hello 1
hrp timer hold 3

间隔越短,故障检测越快,但会增加心跳链路的负担;间隔越长,故障检测越慢,但占用带宽少。一般默认的3秒间隔和9秒超时时间就足够了。

六、常见坑点与排查思路

1. HRP状态一直处于"Negotiating"

  • 原因:两台设备的HRP配置不一致,或者心跳链路不通
  • 排查步骤
    1. ping命令测试两台设备的心跳IP是否能通
    2. 检查两台设备的HRP配置是否一致,尤其是hrp interfacehrp remote参数
    3. 检查心跳接口的安全策略是否允许UDP 10000端口的流量

2. 主备切换后业务中断

  • 原因:会话同步没有生效,或者备用设备的路由配置不正确
  • 排查步骤
    1. 在主设备上执行display hrp session sync status,查看会话同步是否正常
    2. 在备用设备上执行display ip routing-table,检查路由配置是否和主设备一致
    3. 检查备用设备的安全策略是否和主设备一致

3. 配置不同步

  • 原因hrp config sync参数配置不正确,或者两台设备的版本不一致
  • 排查步骤
    1. 执行display hrp config sync status,查看配置同步的状态
    2. 检查两台设备的系统版本是否一致,华为HRP要求两台设备的版本必须完全相同
    3. 执行hrp config sync all手动触发一次全量同步

华为HRP主备模式是目前企业网络中最常用的高可用方案,配置不难,但细节很多,尤其是心跳链路的配置和VRRP的联动,稍微不注意就会踩坑。

另外,现在华为已经推出了HRP多主模式,适合分布式部署的场景,多台防火墙可以同时处理业务流量,性能更高,但配置也更复杂。如果是单中心的高可用场景,主备模式完全足够,而且配置简单,维护方便。

如果觉得这些经验对你有用,不妨动动手指点赞,再顺手收藏起来,方便后续回看或分享给有需要的朋友 ------ 您的每一份支持,都是我继续分享的动力,感谢阅读!

相关推荐
王二端茶倒水1 天前
商业 WiFi 不是免费上网,而是门店数字化的入口
网络协议
zzzzzz3102 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode2 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220703 天前
如何搭建本地yum源(上)
运维
大树886 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠6 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
程序猿追6 天前
那个右下角的小数字怎么“卡”住我打字——我用 HarmonyOS 自己写了一个字数限制输入框
pytorch·华为·harmonyos
古德new6 天前
鸿蒙PC使用electron迁移:Joplin Electron 桌面适配全记录
华为·electron·harmonyos
世人万千丶6 天前
桌面便签小应用 - HarmonyOS ArkUI 开发实战-TextArea与Flex布局-PC版本
华为·harmonyos·鸿蒙·鸿蒙系统
霸道流氓气质6 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务