为什么需要要双机热备?
解决单点故障,实现业务的平滑过渡(会话表需要同步的)
双机热备的两种部署方式:
防火墙双机热备产生的原因,详细内容可参考:防火墙双机热备技术
VRRP协议的详细内容可参考:虚拟路由冗余协议(VRRP)
VRRP备份组有三种状态:Initialize、Master和Backup。
接口或者整机发现故障,BACKUP设备等待死亡时间
BACKUP设备成为MASTER以后,发送免费ARP刷新交换机MAC地址表。
PC ARP请求,只有MASTERT设备给回应
抢占过程,默认开启抢占
只能针对单独一个VRPP备份组。
出现状态切换不一致的,导致业务中断。
解决方案:VGMP
VGMP(VRRP Group Management Protocol)协议是华为公司的私有协议。VGMP协议中定义了VGMP组,FW基于VGMP组实现设备主备状态管理。
解决VRRP备份组切换不一致性的问题
对标准VRRP修改头部
Type = 1 标准VRRP Type=2
Vir R ID===等于对应的组号,如果VGMP =0
删除优先级字段,增加Type2字段
Type2= 1 -----------心跳探测报文(验证心跳线接口UP DOWN的问题)
5------------HRP一致性检查(策略)
2------------看VGMP的vtype字段
HRP心跳报文(Hello) VGMP报文 HRP数据报文
VGMP: vPriority 优先级
VGMP优先级:
USG6000,NGFW Module的初始优先级都为45000.
VGMP的状态有:initialize stanby active A-to-S S-to-A
启用双机热备功能后,各VGMP组进入Initialize(初始化)状态。
主备模式
指定设备谁是Active,谁是standby(自己决定)
将VGMP组内所有VRRP备份组状态为指定的Active standby(VRRP备份组状态一致性)
Active设备发送免费ARP,刷新交换机MAC地址表(引导流量)
周期性发送HRP心跳报文(周期1S 死亡3S)----------监控Active和Standby状态
A. 接口或者链路发生故障
过程:
原Active方
接口故障------VRRP备份组变成init-----------VGMP感知,优先级65001-2=64999---------发送VGMP请求报文(携带变化以后的优先级64999)------状态从Active变成 A to S 收到VGMP确认以后--------状态变成Standby,组成所有成员除了故障的都变成Standby
原Standby方
收到VGMP请求报文----------对比优先级--------自己高优先级,切换为Active--------VGMP组内所有的VRRP备份组状态切换为Active-----发送免费ARP刷新交换机MAC地址表-----------回应一个VGMP确认
如果接口上配置了VRRP备份组,该接口故障时,VGMP管理组优先级降低2 * 接口上VRRP备份组数量。
如果使用hrp track interface命令配置VGMP管理组监控物理接口状态,每一个物理接口故障时,VGMP管理组优先级降低2。
如果使用hrp track interface命令配置VGMP管理组监控Eth-Trunk或IP-Trunk接口状态时,缺省情况下,Trunk接口的部分成员接口故障,VGMP管理组的优先级降低 2 * 故障成员接口个数。Trunk接口的所有成员接口故障,优先级降低 2 * (1 + 成员接口个数)。
使用undo hrp track trunk-member enable命令取消双机热备模块对Eth-Trunk或IP-Trunk成员接口状态的监控后,部分成员接口故障时,优先级不会降低。所有成员接口故障时,优先级降低值为2 * 故障Trunk接口个数。
如果接口上配置了VRRP备份组,同时又使用hrp track interface命令配置VGMP管理组监控接口的状态,当接口故障时,VGMP管理组优先级降低值会叠加计算。例如,接口GigabitEthernet 1/0/1上配置了2个VRRP备份组,同时又配置了hrp track interface GigabitEthernet 1/0/1,当GigabitEthernet 1/0/1故障时,VGMP管理组优先级降低6。
如果使用hrp track vlan监控VLAN状态,加入该VLAN的接口故障时,VGMP管理组优先级降低2。
B. 整机或者心跳线发现故障
整机故障-------------主DOWN了,备的成为主
心跳线故障-----------会出现双主(双活)
收不到HRP心跳报文(V100中是3次,3s。 V500版本中是5次,5s )------------切换---------组内所有VRRP备份组都变成Active---------发送免费ARP,刷新MAC地址表
C. 故障恢复, 抢占功能开启
接口恢复------状态变成Standby----------VGMP优先级64999+2 =65001 ---------等待抢占延迟时间到(默认60S)----发送VGMP请----------状态S-to-A状态 收到确认以后变成S-to-A变成Active ----组内所有VRRP备份变成Active—发送免费ARP刷新交换机MAC地址表
收到VGMP请求报文----------对比优先级--------自己低优先级,切换为Standby-------组内所有VRRP备份组切换为Standby----发送VGMP确认
分类:直连和非直连
针对直连故障
A. 检测VRRP备份组状态
适用场景:防火墙业务接口工作在三层,上下接交换机(二层)B. 检测三层接口的状态
适用场景: 防火墙业务接口工作在三层,上下接路由器
int xxxx
hrp track xxxxC 检测VLAN接口状态
适用场景:防火墙业务接口工作在二层,上下接交换机(或者上下接路由器)
vlan xxx
hrp track XXXX
非直连故障
IP-LINK
BFD
IP-Link是指FW通过向指定的目的IP周期性地发送探测报文并等待应答,来判断链路是否发生故障。
FW发送探测报文后,在三个探测周期(默认为15s)内未收到响应报文,则认为当前链路发生故障,IP-Link的状态变为Down。随后,FW会进行IP-Link Down相关的后续操作,例如双机热备主备切换等。
当链路从故障中恢复,FW能连续地收到3个响应报文,则认为链路故障已经消除,IP-Link的状态变为Up。也就是说,链路故障恢复后,IP-Link的状态并不会立即变为Up,而是要等三个探测周期(默认为15s)才会变为Up。
主备切换的时间与其触发条件有关。
虚拟IP引流
适用场景:防火墙业务接口工作在三层,上下接交换机(二层)
OSPF COST引流
适用场景: 防火墙业务接口工作在三层,上下接路由器
VLAN禁用和启动引流
适用场景:防火墙业务接口工作在二层,上下接交换机(或者上下接路由器)
动态路由引流
适用场景: 防火墙业务接口工作在三层,上下接路由器
HRP实现备份会话表等状态信息和关键的配置。
HRP报文实际上是一种VGMP报文,承载在VGMP报文的Data区域。当然也存在两种封装方式。
管理面HRP报文中会携带以下信息:指定自动备份还是批量备份、指定是发送还是应答、备份的数据类型。
转发面HRP同步报文(实时备份报文)也有两种封装:
封装VRRP,组播224.0.0.18 -------不需要受安全策略监控
封装UDP, 单播 -------需要受安全策略监控
配置心跳线的时候需要考虑加不加remote。
当设备两边均配置心跳口后,防火墙会判断心跳接口的物理与协议状态。心跳链路一共存在五种状态:
当有多根心跳线时,哪个接口先配置的心跳线,即哪个接口的状态先成为ready,当两端心跳线通信时,先成为ready的接口就会成为running
当本端running接口down时,第二成为ready的接口会代替down的接口成为本端设备的running口。
继承顺序按照成为ready的时间,没有比较优先级等。只看时间戳。
当两端的心跳线有多根时,如果两端的running口不是一根链路,也可以正常通信。
防火墙备份通道选择:
双机热备组网中,心跳线是两台FW交互消息了解对端状态以及备份配置命令和各种表项的通道。心跳线两端的接口通常被称之为“心跳接口”。
心跳线主要传递如下消息:
FW支持主备备份和负载分担模式两种运行模式。
主备备份指正常情况下仅由主用设备处理业务,备用设备空闲;当主用设备接口、链路或整机故障时,备用设备切换为主用设备,接替主用设备处理业务。
流量由单台设备处理,相较于负载分担模式,路由规划和故障定位相对简单。
所谓负载分担,也可以称为“互为主备”,即两台设备同时处理业务。当其中一台设备发生故障时,另一台设备会立即承担其业务,保证原来需要通过这台设备转发的业务不中断。
防火墙缺省提供两个VGMP管理组:Active组和Standby组。主备备份时只有个VGMP管理组在工作。负载分担时两个VGMP管理组同时工作,工作原理完全相同。
相较于主备备份模式,组网方案和配置相对复杂。
负载分担组网中使用入侵防御、反病毒等内容安全检测功能时,可能会因为流量来回路径不一致导致内容安全功能失效。
负载分担组网中配置NAT时,需要额外的配置来防止两台设备NAT资源分配冲突。
负载分担模式组网中流量由两台设备共同处理,可以比主备备份模式或镜像模式组网承担更大的峰值流量。
负载分担模式组网中设备发生故障时,只有一半的业务需要切换,故障切换的速度更快。
参考文档:华为HedEx文档