IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> HCIE-Security Day11:初步学习防火墙双机热备和VGMP概念 -> 正文阅读

[系统运维]HCIE-Security Day11:初步学习防火墙双机热备和VGMP概念

目录

?

基本概念

产生目的

工作模式

主备备份

负载分担

注意事项

VGMP组

VGMP报文结构

标准vrrp报头

vgmp报文类型

心跳链路探测报文

一致性检查报文

vgmp hello报文

hrp hello报文

hrp数据报文

VGMP报文交互通道


基本概念

防火墙的高可靠性可以通过双机热备等方式实现,相比于路由器和交换机,有了一些不一样的东西,主要总结就是:

通过VGMP协议和HRP协议实现防火墙之间主备切换,会话表项和配置命令的同步。

VGMP协议是对vrrp协议的补充和针对防火墙部署特性的适应性改进,实现主备防火墙上下行接口同步切换状态。

HRP协议实现了防火墙双机之间动态状态数据和关键配置命令的备份。

产生目的

传统备份方案在接入点部署多台路由器形成主备备份,并通过vrrp或者动态路由等方式进行链路切换。但是如果接入点部署的是状态检测防火墙时,由于它是基于连接状态的,维护会话表,高效转发非首包。如果还是仅仅使用vrrp的话,虽然流量可以在主备之间切换,但是新的master的会话表项需要重新引导建立,原有连接中断,造成业务中断。

状态检测防火墙是基于连接状态的,会对一条流量的首包(第一个报文)进行完整的检测,并建立会话来记录报文的状态信息(包括哦报文的源目地址、源目端口和协议号等),而这条流量的后续报文只需匹配会话就可以通过防火墙并完成转发,如果不匹配则会被丢弃。

针对这一情况,开发了防火墙的双机热备功能。其最大特点就是通过在主备防火墙之间部署专用心跳线,用来同步防火墙主备状态、会话表项以及配置信息,使得流量无缝切换。

工作模式

主备备份

正常情况下,两台防火墙根据配置形成一主一备,master会处理业务,并将设备上的会话、server-map表等重要信息以及配置信息通过心跳线实时同步到backup。backup不会处理业务,只是接收master传递的这些表项和配置命令。

master故障后,backup升主,处理业务,业务流量被上下行设备的路由信息引导到新的master上,由于新的master之前已经同步了各种会话表项和配置信息,所以业务的切换是无感的。

负载分担

如果希望backup闲置,或者业务流量较多,对master产生较大压力,可以考虑采用负载分担模式,该模式下,两台fw都是master,都建立会话,都处理业务流量,同时又作为对方的backup设备,接受对方备份的会话和配置信息。

正常情况下,两台fw各自负责不同类型的流量转发,当某一fw故障后,流量全部切换到另外一台fw。

相比主备备份方式,组网方案和配置比较复杂。也有更多需要注意的地方,比如nat地址池的分配啦、流量的来回路径不一致啦,峰值流量啦,总之让人头大,后面通过实验再讲吧。

注意事项

目前只支持两台完全一致防火墙之间部署。完全一致的意思看起来简单,但是实际上不好给定。硬件的一致指的是型号必须要一样,安装的单板类型、数量以及单板安装的位置必须相同,在更高版本的防火墙中,比如USG6680E等,还要求同型号设备的BomID version匹配,可以通过display version检查。但是硬盘的有无不包括在内。

软件的一致包括系统软件版本、系统补丁版本、动态加载的组件包、特征库版本、HASH选择CPU模式以及HASH因子等。但实际上,两台fw可以暂时运行不同版本的系统软件。

VGMP组

vrrp组管理协议,VRRP Group Management Protocol,华为私有协议。

防火墙的双机热备功能是在VRRP的基础上拓展而来的,vrrp上一篇已经系统学习过了,总的来说就是保证了当主机的默认网关出现故障时,由备份路由器自动代替出现故障的路由器完成报文转发任务,从而保持网络通信的连续性和可靠性。

vrrp的主备指的是作为主机的默认网关的主备,解决的是网关的可靠性问题。而作为防火墙,则需要对上下行接口均进行主备。

所以就需要给上行接口也配置vrrp,这样,两台防火墙的下行接口加入vrrp备份组1,上行接口加入vrrp备份组2,正常情况下,一台防火墙的上下行接口要么都是主,要么都是备。比如fw1是vrrp备份组1中的master设备,也是vrrp备份组2中的master设备,内外网之间的业务报文都会通过fw1来转发。

如果fw1的下行接口故障,则vrrp备份组1发生主备切换,fw2成为vrrp备份组1的master设备,并且通过发送免费arp的方式引导上行流量通过自己转发,但是fw1的上行接口依然是正常的,它仍是vrrp备份组2的master设备,所以回程流量一定会流向fw1,企图通过fw1做转发。但是fw1的下行接口是故障的,所以它没有办法完成这项使命,只好抱歉的把这些流量全部丢掉。此时,我们的业务流量就中断了。

这并不是我们希望看到的样子,所以我们希望vrrp协议聪明一点,多个vrrp备份组之间步调一致,不要各自为战,免得防火墙对上是主,对下是备,欺上瞒下。

为了让vrrp不要各自为战,解决多个vrrp备份组状态不一致的问题,华为防火墙引入VGMP(vrrp组管理协议),实现对vrrp备份组的统一管理,保证多个vrrp备份组状态的一致性。把防火墙上所有的vrrp备份组都加入到同一个vgmp组中,由vgmp组来集中监控并管理所有的vrrp备份组状态。如果vgmp组检测到其中一个vrrp备份组的状态变化,则vgmp组会控制组中的所有vrrp备份组统一进行状态切换,保证各vrrp备份组状态的一致性。

vgmp组的优先级决定了vgmp组的状态,高优先级的是active,低优先级的是standby。

vgmp组的状态决定了组内vrrp备份组的状态,也决定了防火墙的主备状态。

vgmp组的初始优先级是根据cpu个数自动生成的,后续会根据vrrp状态变化进行调整,vrrp状态变init,vgmp组的优先级下调2.

有了vgmp,在fw1上将vrrp备份组1和备份组2都加入active的vgmp组,在fw2上将vrrp备份组1和备份组2都加入standby的vgmp组。由于vgmp组的状态决定了组内vrrp备份组的状态,也决定了防火墙的主备状态,所以fw1是主设备,fw2是从设备,fw1的上下行接口都是master,fw2的上下行接口都是backup,这时如果fw1的下行接口故障,则fw1的vgmp组优先级下调,成为standby状态,而fw2上的vgmp组成了active状态,即fw1是备设备,fw2是主设备。vgmp组内vrrp备份组状态也被调整,fw1的上行接口成为backup,fw2的上行接口成为master,此时上行流量通过fw2转发,下行流量也通过fw2转发,流量不会丢失。

两台防火墙的VGMP组之间通过交互VGMP报文来传递状态和优先级信息。

VGMP报文结构

vgmp报文由改造后的vrrp报头封装。

标准vrrp报头

?

versiontypevirtual rtr idprioritycount ip addrs
auth typeadver intchecksum
ip address1
ip addressn
auth data1
auth data2

Version:2

Type:1,表示advertisement

Vrid:虚拟路由器id ,从1到255

Priority:缺省100,越大越优,0表示停止参与备份组,主动放弃master地位,不必等到计时器超时,255保留给ip地址拥有者

Count ip addrs:备份组中虚拟ipv4地址个数

Auth type:0不认证,1明文认证,2md5认证

Adver int:通告报文发送间隔,默认1s

Checksum:16位校验和,检测vrrp报文完整性

Ipaddr1:第一个vrrp备份组中虚拟ipv4地址

Ipaddrn:第n个vrrp备份组中虚拟ipv4地址

Auth data:明文认证和md5认证使用
?

然后把vgmp报文也放这里

versiontypevirtual rtr idtype2count ip addrs
auth typeadver intchecksum
auth data1
auth data2
versionvtypemodevgmpidvpriority
checkcode
datalen
data

比较

字段标准vrrp头改造vrrp头
type恒为1,表示vrrp通告为1表示标准vrrp通告报文,为2表示改造vrrp通告报文
virtual rtr id表示vrrp备份组id恒为0
priority/type2priority,表示优先级type2
为1时,表示携带心跳链路探测报文
为5时,表示携带一致性检查报文
为2时,携带vgmp报文
ip addressvrrp备份组中虚拟ipv4地址取消
vtype 表示vgmp hello报文
或hrp hello报文
或hrp数据报文
mode 请求报文/应答报文
vgmpid 表示vgmp组是active组还是standy组
vpriority 表示vgmp组的优先级
data 包含vgmp组的状态信息

vgmp报文类型

心跳链路探测报文

检测对端设备的心跳口能否正常接收本段设备的报文,以确定是否有心跳口可以使用

一致性检查报文

检测双机热备状态下的两台防火墙的双机热备和策略配置是否一致,如安全策略、NAT等。

vgmp hello报文

两台防火墙之间的vgmp组协商主备。

hrp hello报文

探测对端的vgmp组是否处于工作状态,状态为active的vgmp组会每隔一段时间(缺省1s)向对端的vgmp组发送hrp心跳报文,用来通知本端的vgmp组状态和优先级。如果状态为standby的vgmp在三个周期内没有收到对端发送的hrp心跳报文,就认为对端vgmp组故障,将自身状态切换到active。

hrp数据报文

在vgmp报文头后增加hrp报文头,才能封装成hrp数据报文,hrp数据报文用来在主备设备之间的数据备份,包括命令行配置的备份和各种状态信息的备份。

特别注意:上述报文均不受FW的安全策略控制。因此,不需要针对这些报文配置安全策略!

VGMP报文交互通道

双机热备组网中,心跳线是两台fw交互消息了解对端状态以及备份配置命令和各种表项的通道。心跳线两端的接口叫做心跳接口。vgmp报文就是通过心跳线来交互的。

心跳接口最好使用防火墙的ha接口,如果没有ha接口,可以多个以太网接口绑成eth-trunk接口。

心跳接口一般光纤或网线直连,也可以通过交换机或者路由器连接。

心跳接口必须加入相同的安全区域。

心跳接口的mtu不要小于1500.

心跳线不要跑业务数据。

今天没有实验,明天会贴实验出来 :)

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-02-14 21:37:00  更:2022-02-14 21:39:27 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 5:44:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码