华为防火墙双机热备(VRRP+VGMP+HRP)

前言:在网络关键节点上,如果只部署一台设备,无论其可靠性多高,系统都必然要承受因单点故障而导致的网络中断的风险
防火墙一般用作内网到外网的出口,是业务关键路径上的设备,为了防止因一台设备故障而导致的业务中断,要求防火墙必须提供更新更高的可靠性,此时需要使用防火墙双机热备组网
双机热备组网的建立和运行需要解决以下几个关键问题:

  • 设备的主备状态是如何决定的
  • 如何监控并发现接口或者设备故障
  • 发现故障后,如何保证设备的主备状态切换
  • 正常情况和故障后,流量是如何引导的
  • 如果进行信息同步,保证主备切换后业务不中断

以上问题都是由双机热备特性涉及的三大协议VRRP VGMP HRP共同配合解决的

文章目录

  • 一、双机热备理论
    • 1.概述
      • 1)VRRP
      • 2)VGMP
        • 2.1 概念
        • 2.2 工作原理
        • 2.3 报文封装
      • 3)HRP
    • 2.方式
  • 二、实验
    • 1.实验环境
    • 2.拓扑图
    • 3.详细配置
      • 1)配置IP
      • 2)防火墙配置
    • 4.验证

一、双机热备理论

1.概述

  • 传统组网中,只有一台防火墙部署在出口,当防火墙出现故障后,内部网络中所有以防火墙作为默认网关的主机与外部网络之间的通讯中断,通讯可靠性无法保证
  • 双机热备份技术的出现改变了可靠性难以保证的尴尬状态,通过在网络出口位置部署两台或多台网关设备,保证了内部网络于外部网络之间的通讯畅通

1)VRRP

  • 首先,VRRP就不多说了,在之前的博客中有解释过,这是一个共有的网关冗余技术,可以在两台设备之间形成虚拟IP地址,建立主备的冗余关系,但是传统的VRRP在安全领域有一个不可忽略的问题,就是当防火墙上下行业务端口上都配置了VRRP备份组的时候,这两个VRRP备份组是独立运行的,可能出现上下行两个VRRP备份组状态不一致的情况
  • 于是华为防火墙引入了VGMP来实现对VRRP备份组的统一管理,保证多个VRRP备份组状态的一致性

2)VGMP

  • 为了解决多个VRRP备份组状态不一致的问题,华为防火墙引入VGMP,来实现对VRRP备份组的统一管理,保证多个VRRP备份组状态的一致性
  • VGMP是华为的私有协议

2.1 概念

  • VGMP(VRRP Group Management Protocol)组管理协议:由于双机热备导致设备出问题时可能会来回路径不一致,因此,我们将防火墙上的所有VRRP备份组都加入到一个VGMP组中,由VGMP组来集中监控并管理所有的VRRP备份组状态
  • 如果有一个VRRP备份组有状态变化,则全部VRRP备份组进行状态切换,保证各VRRP备份组状态的一致性

2.2 工作原理

  • 默认情况下VGMP的优先级为45000
  • VGMP通过心跳线协商VGMP状态信息
  • VGMP 有状态和优先级两个基本属性,并且有三条基本运行原则
    • VGMP的状态决定了组内VRRP备份组的状态,也决定了防火墙的主备状态
    • VGMP组的状态是由两台防火墙的VGMP组通过比较优先级来决定的。优先级高的VGMP组状态为Active,优先级低的VGMP组状态为Standby
    • VGMP组会根据组内VRRP备份组的状态变化来更新自己的优先级。每个VRRP备份组的状态变成Initialize, VGMP组的优先级就会降低2

2.3 报文封装

  • 两台防火墙的VGMP组是通过VGMP报文来传递优先级信息的
  • VGMP的报文有两种形式
    • 当心跳线直接相连,或通过二层交换机相连时,发送的报文属于组播报文,并且不携带UDP头部信息
    • 当心跳线通过三层设备相连,组播是无法通过的,此时报文封装中会额外加一个UDP头部信息,发送时使用单播

3)HRP

  • HRP(Huawei Redundancy Protocol)双机热备协议(华为冗余协议):协议是承载在VGMP报文上进行传输的,用于主设备出现问题时,备能快速切换至主,同时保证了主备之间的配置命令和会话表状态信息同步
  • VGMP、HRP是华为私有协议

2.方式

华为防火墙双机热备的方式主要有三种

  • 自动备份
    • 该模式下,和双机热备有关的配置命令只能再主用设备上配置,并自动同步到备用设备中,主用设备自动将装填信息同步到备设备中。该模式是华为防火墙默认开启模式,主要用于热备模式 hrp auto-sync
  • 手工批量备份
    • 该模式下,主要设备上所有的配置命令和状态信息,只有在手工执行执行批量备份命令时才会自动同步到备用设备,该模式主要用于主备设备配置不同步,需要立即进行同步的场景中
  • 快速备份
    • 该模式下,不同步配置命令,只同步状态信息,在负载均衡方式的双机热备环境中,该模式必须启动,以快速更新状态信息

二、实验

1.实验环境

  • 实验软件:eNSP软件
  • 实验设备:
    • 一台pc测试机
    • 两台三层交换机
    • 两台防火墙(USG6000V)用于双机热备

2.拓扑图

华为防火墙双机热备(VRRP+VGMP+HRP)_第1张图片

3.详细配置

1)配置IP

  • PC机IP配置
    华为防火墙双机热备(VRRP+VGMP+HRP)_第2张图片
  • R1路由器
[R1]dis cu
#
sysname R1
interface GigabitEthernet0/0/0
 ip address 10.1.1.1 255.255.255.0
#
interface LoopBack0
 ip address 1.1.1.1 255.255.255.255
#
ip route-static 192.168.10.0 24 10.1.1.100
  • 在配置防火墙之前需要对登录信息进行配置
Username:admin          //输入初始账号
Password:	   //输入初始密码Admin@123
The password needs to be changed. Change now? [Y/N]: y
Please enter old password:      	//输入Admin@123
Please enter new password:     	//输入自定义新密码
Please confirm new password: 	    //再次输入新密码``
  • 接着进入防火墙配置接口IP地址
#
sysname FW1
#
interface GigabitEthernet1/0/0
 undo shutdown
 ip address 10.1.1.101 255.255.255.0
#
interface GigabitEthernet1/0/2
 undo shutdown
 ip address 192.168.10.101 255.255.255.0


#
sysname FW2
#
interface GigabitEthernet1/0/0
 undo shutdown
 ip address 10.1.1.102 255.255.255.0
#
interface GigabitEthernet1/0/2
 undo shutdown
 ip address 192.168.10.102 255.255.255.0

2)防火墙配置

  • 将防火墙接口加入相应的区域
[FW1]firewall zone trust
[FW1-zone-trust]add int g1/0/2	
[FW1-zone-trust]q
[FW1]firewall zone dmz
[FW1-zone-dmz]add int g1/0/1
[FW1-zone-dmz]q	
[FW1]firewall zone untrust 
[FW1-zone-untrust]add int g1/0/0

[FW2]firewall zone trust
[FW2-zone-trust]add int g1/0/2	
[FW2-zone-trust]q
[FW2]firewall zone dmz
[FW2-zone-dmz]add int g1/0/1
[FW2-zone-dmz]q	
[FW2]firewall zone untrust 
[FW2-zone-untrust]add int g1/0/0
  • 添加默认路由
[FW1]ip route-static 0.0.0.0 0.0.0.0 10.1.1.1
[FW2]ip route-static 0.0.0.0 0.0.0.0 10.1.1.1
  • 配置防火墙规则
//配置心跳线的安全规则
[FW1]security-policy 
[FW1-policy-security]rule name permit_heat
[FW1-policy-security-rule-permit_heat]source-zone local
[FW1-policy-security-rule-permit_heat]destination-zone dmz	
[FW1-policy-security-rule-permit_heat]action permit 
[FW1-policy-security-rule-permit_heat]q

[FW2]security-policy 
[FW2-policy-security]rule name permit_heat
[FW2-policy-security-rule-permit_heat]source-zone local
[FW2-policy-security-rule-permit_heat]destination-zone dmz	
[FW2-policy-security-rule-permit_heat]action permit 
[FW2-policy-security-rule-permit_heat]q


//配置其他的安全规则
[FW1-policy-security]rule name permit_trust_untrust	
[FW1-policy-security-rule-permit_trust_untrust]source-zone trust 	
[FW1-policy-security-rule-permit_trust_untrust]destination-zone untrust 
[FW1-policy-security-rule-permit_trust_untrust]action permit 
[FW1-policy-security-rule-permit_trust_untrust]q

[FW2-policy-security]rule name permit_trust_untrust	
[FW2-policy-security-rule-permit_trust_untrust]source-zone trust 	
[FW2-policy-security-rule-permit_trust_untrust]destination-zone untrust 
[FW2-policy-security-rule-permit_trust_untrust]action permit 
[FW2-policy-security-rule-permit_trust_untrust]q
  • 配置VRRP备份组
[FW1]int g1/0/2
[FW1-GigabitEthernet1/0/2]vrrp vrid 1 virtual-ip 192.168.10.100 active 
[FW1-GigabitEthernet1/0/2]un sh
[FW1-GigabitEthernet1/0/2]q
[FW1]int g1/0/0
[FW1-GigabitEthernet1/0/0]vrrp vrid 2 virtual-ip 10.1.1.100 active 
[FW1-GigabitEthernet1/0/0]un sh

[FW2]int g1/0/2
[FW2-GigabitEthernet1/0/2]vrrp vrid 1 virtual-ip 192.168.10.100 active 
[FW2-GigabitEthernet1/0/2]un sh
[FW2-GigabitEthernet1/0/2]q
[FW2]int g1/0/0
[FW2-GigabitEthernet1/0/0]vrrp vrid 2 virtual-ip 10.1.1.100 active 
[FW2-GigabitEthernet1/0/0]un sh
  • 配置心跳接口并启动双机热备
[FW1] hrp interface g1/0/1 remote 172.16.1.2
[FW1] hrp enable

[FW2] hrp interface g1/0/1 remote 172.16.1.1
[FW2] hrp enable
  • 两个都开启双机热备后,会发现[FW1]变成了HRP_M[FW1](主),[FW2]变成了HRP_S[FW2](从)
  • 这时可以使用dis hrp state命令查看双机热备的状态信息
HRP_M[FW1]dis hrp state             //FW2操作相同
2020-02-14 10:35:30.900 
 Role: active, peer: standby
 Running priority: 45000, peer: 45000
 Backup channel usage: 0.00%
 Stable time: 0 days, 0 hours, 1 minutes
 Last state change information: 2020-02-14 10:33:49 HRP core state changed, old_
state = abnormal(standby), new_state = normal, local_priority = 45000, peer_prio
rity = 45000.
  • 查看心跳接口状态
HRP_M[FW1]dis hrp interface 	   //FW2操作相同
2020-02-14 10:36:21.260 
             GigabitEthernet1/0/1 : running

4.验证

  • 模拟故障;关闭SW1交换机内的0/0/1接口
[SW1]int e0/0/1
[SW1-Ethernet0/0/1]shutdown
  • 此时查看防火墙的双机热备状态
HRP_S[FW1]dis hrp state	
2020-02-14 10:40:29.350 
 Role: standby, peer: active (should be "active-standby")  //可以发现已经变成从了,FW2变成了主
 Running priority: 44998, peer: 45000
 Backup channel usage: 0.00%
 Stable time: 0 days, 0 hours, 1 minutes
 Last state change information: 2020-02-14 10:39:09 HRP core state changed, old_
state = normal, new_state = abnormal(standby), local_priority = 44998, peer_prio
rity = 45000.
  • 重新开启SW1的接口
[SW1-Ethernet0/0/1]un sh
  • 再次查看防火墙状态
//可能会有点延迟,需要等到通告信息发出后,查看状态
HRP_M[FW1]dis hrp state
2020-02-14 10:42:52.450 
 Role: active, peer: standby
 Running priority: 45000, peer: 45000
 Backup channel usage: 0.00%
 Stable time: 0 days, 0 hours, 0 minutes
 Last state change information: 2020-02-14 10:42:47 HRP core state changed, old_
state = abnormal(standby), new_state = normal, local_priority = 45000, peer_prio
rity = 45000.
//主又变回FW1了,因为当时在FW1的vrrp配置的时候选择了active,所以会变回来

你可能感兴趣的:(华为)