防火墙双机热备---VRRP,VGMP,HRP(超详细)

双机热备技术-----VRRP,VGMP,HRP三个组成

注:与路由器VRRP有所不同,路由器是通过控制开销值控制数据包流通方向

防火墙双机热备:

        1.主备备份模式

        双机热备最大的特点就是防火墙提供了一条专门的备份通道(心跳线)用于防火墙之间传输备份会话表,Server-map表等重要信息和配置。并且心跳线也为防火墙提供协商通道。

                1.主用设备---会处理业务和流量,并将设备上的会话表等信息以及配置信息通过心跳线实时同步给备用通道

                2.备用设备---不会处理业务流量,只是通过心跳线,接收来自于主用设备的状态信息以及配置信息

                一旦主用设备发生故障,会通过心跳线重新协商主备状态,如果进行切换,同时,业务流量也需要被上下行设备的路由信息引导到新的主用设备上,否则流量还是无法通讯

        2.负载分担模式

        在该情境下,两台防火墙均为主用设备(不同的pc),都需要建立会话,都需要处理业务流量,同时两台防火墙又都相互作为对方的备用设备,接收对方的配置和会话。

FW2为1.0的主设备,FW3为2.0的主,且两个防火墙互相备份

总结:双机热备为了提供网络的可靠性,避免网络的单点故障

VRRP和VGMP

回顾路由器vrrp:VRRP(虚拟路由冗余协议)_vrrp协议-CSDN博客

        为何创建两个VRRP?

        在双机热备场景中,因为需要上下行流量的统一切换,故需要创建两个VRRP组,分别加入上行接口和下行接口。从而控制上下行设备的流量控制转向。---且两个不同的VRRP组的Active设备必须为同一个防火墙。

切换原理:FW2会向配置了VRRP组的接口发送免费ARP报文,其中携带了备份组的IP和MAC,好让交换机或者路由器改变MAC表或者路由表,从而达到切换线路的目的

        VRRP备份组之间是相互独立的,当一台设备出现多个VRRP备份组时,VRRP备份组之间的状态时无法同步的。

VGMP解决VRRP问题

                VGMP----VRRP组管理协议---实现对VRRP备份的统一管理,保证多个VRRP组状态的一致性

        如何实现一致性?

        将防火墙上所有的VRRP备份组都加入到同一个VGMP组中,由VGMP组来集中监控并管理所有的VRRP备份组状态。如果VGMP检测到其中一个VRRP备份组状态发生变化,则VGMP会控制组中所有VRRP组统一进行状态切换,保证一致性。


        VGMP存在状态和优先级两个属性。并且有三条运行原则

VGMP的状态决定了组内VRRP备份组的状态,也决定了防火墙的主备状态

VGMP组的状态是由两个防火墙的VGNP组通过比较优先级来决定的

                优先级高的为Active,低的为Standby

VGMP组会根据组内VRRP备份组的状态变化来更新自己的优先级

                每个VRRP备份组的状态切换为初始化状态,VGMP组的优先级降低2

VGMP实现过程

        当FW1接口发生故障时,VGMP组控制VRRP备份组状态统一切换过程

1.FW1G1/0/3接口故障,FW1上的VRRP备份组2发生状态切换(由主----初始化)

2.FW1的VGMP组感知到这一变化后,会降低自身的优先级,然后与FW2的VGMP组比较优先级,重新协商主备状态

3.协商后,FW1的VGMP状态变为Standby,FW2的VGMP组状态变为Active

4.同时,由于VGMP组的状态决定了组内的VRRP备份组状态,所有FW1和FW2身上各自的VRRP备份组1和备份组2都会进行状态切换

5.FW2成为Active状态,并从上下游分别发送免费ARP报文,更新设备的MAC地址表


VGMP报文结构

        在防火墙中,优先级信息会通过VGMP报文传递,是对VRRP报文进行修改和扩展

        1.标准的VRRP报文的“TYPE”字段恒定为1,而VGMP增加了2;

                在VGMP 中,1代表标准的VRRP报文,2代表VGMP报文

        2.在标准的VGMP报文中,“virtual Rtr ID",携带的是VRRP备份组的组ID,即VRID。

                在VGMP中,恒定为0

        3.去掉了VRRP的IP地址字段

        4.标准VRRP报文的优先级字段,在VGMP中被修改为”TYPE2"字段

                TYPE2=1,则报文为心跳链路探测报文

                TYPE2=5,则报文为一致性检查报文。 ----检查双机热备状态下,两台防火墙的是否配置了相同的策略

                TYPE2=2,VRRP报文才会进一步封装VGMP报文头。----该报文才能被认为是真正的VGMP报文。

                        会根据VGMP中的“vType”字段继续被分为三种不同的报文

VGMP组需要携带上VGMP组优先级信息,才可以代替VRRP进行管理

        类型(mode) --- 代表报文是请求报文,还是应答报文

        VGMP-ID --- 代表VGMP组为Active还是Standby组

        优先级 ---代表VGMP组的优先级

在双机热备中,除了VRRP标准报文以外,其他所有报文的发送接收,都是基于心跳线完成的


标准的VRRP协议是一个跨四层封装协议,即没有传输层封装,直接IP封装。

而VGMP继承了VRRP的特点,但是也增加了UDP进行封装的模式。

        IP协议封装 --- 组播报文---只能在心跳线上传输

                数据链路层+ IP协议封装+ VRRP协议+ VGMP协议+ VGMP数据

                不能跨网段传输,不受安全策略控制(安全策略就对单播有效

        UDP封装 --- 单播报文

                数据链路层+IP协议封装+ UDP封装+ VRRP协议+ VGMP协议+ VGMP数据

                只要路由可达,就可以跨越网段传输,但是收到安全策略控制。

                端口号=18514


VGMP工作过程

VGMP组缺省情况

        每台防火墙提供两个VGMP组,默认情况下,Active组的优先级为65001,状态为Active;Atandby组优先级为65000,状态为Standby。


主备备份双机热备状态形成过程

接口故障过程

        上图表示的是主用设备的接口的发生过程变化情况,而当主用设备发生故障,主用设备的VGMP组将不会发送HRP心跳报文。如果备用设备的VGMP组连续三次收不到,则认定对端故障,从而将 自身切换为主用状态。

        当原主用设备故障恢复后,如果配置了抢占功能,那么原主重新成为主用设备,如果没有配置,则原主保持在备份状态。----缺省情况下,主动抢占功能开启,抢占延迟时间为60秒。

接口故障恢复


负载分担双机热备状态形成过程

接口故障

VGMP总结

1. 故障监控 --- VGMP组能够监控VRRP备份组状态变化。

2. 状态切换 --- VGMP组感知到VRRP备份组状态变化后,会调整自己的优先级,并与对端的VGMP组 重新协商主备状态

3. 流量引导 --- 两个VGMP组主备状态建立或切换后,会强制组内的VRRP备份组统一进行状态切换, 然后由状态为Active的VRRP备份组发送免费的ARP报文来引导流量

仅仅适用于防火墙上行或下行设备为交换机的场景


VGMP特殊场景

防火墙连接路由器场景

故障监控

        VGMP组使用的 故障监控方式,是直连监控接口状态。 --- 就是直接将接口加入到VGMP组中,当 VGMP组中的接口故障,VGMP可以直接感知到变化,从而降低自己的优先级。

        如果是负载分担方式的双机热备,则需要在每个业务接口上执行特殊命令,将业务接口分别加入到 Active和Standby组中。

流量引导

        VGMP的流量引导功能,将流量自动引导到主用设备---手工将备用设备所在链路的OSPF开销值改大。VGMP具备根据状态自动调整OSPF的cost数值。 --- 启用流量引导功能后,如果防火墙上存在状态为 Active的VGMP组,则防火墙会正常对外发布路由;如果防火墙上VGMP组状态为Standby,则防火墙 在发布路由时,将Cost增加65500

防火墙透明接入,连接交换机场景

故障监控

        防火墙接口出现在二层,没有IP地址。故障监控方式为通过VLAN监控接口状态。--- 将二层业 务接口加入VLAN,VGMP监控VLAN。当VGMP中的接口故障时,VGMP组会通过VLAN感知到接口状态 变化,从而降低自身优先级

流量引导

        当VGMP组状态为Active时,组内的VLAN能够转发流量。当VGMP组状态为Standby时,组内 VLAN被禁用,不能转发流量。 

防火墙透明接入,连接路由器场景

        故障监控和流量引导与上一个相同,该组网只支持负载分担方式的双机热备,不支持主备备份场景。---原因:如果工作在主备备份,那么备份设备的VLAN会被禁用,导致上下行 路由器无法通讯,无法建立OSPF邻居

VGMP组监控技术

        VGMP可以监控自己本身的接口---物理接口,VRRP接口等。

        但是VGMP还可以监控远端接口。 --- VGMP监控远端接口的方式,只适用于防火墙业务接口工作在 三层时;因为此时接口才能存在IP地址,才可以与远端设备发送IP-link或BFD的探测报文。

总结

每当VGMP组监控的一个接口故障时,无论是直接监控还是简介监控,无论监控的是本地还是远 端,VGMP优先级都是降低2。

只有主用设备才会将流量引导到本设备上,备用设备则是想尽办法拒绝流量引导到本设备。

HRP(双机热备协议)协议

HRP数据报文、HRP心跳报文、HRP一致性检查报文。

HRP协议功能

动态数据备份---实时备份防火墙的会话表,Server-map表,黑白名单,nat

关键配置命名备份---display;reset;debugging不支持备份;网络基本配置如接口地址和路由不能够备份,这些要在双机热备建立前配置完成。

HRP概述

        在主备组网中,由主设备将状态数据和配置命名同步给备份设备

        而在负载分担组网中,状态数据双方均会想对端同步。但是配置命令,不可以。---原因,如果允许两台主用设备之间相互配置命令,可能会造成两台设备命名相互冲突。--引入了“配置主设备”和“配置从设备”。---在负载分担组网中,发送备份配置命令的防火墙为配置主设备(HRP_M),接收配置命令的防火墙成为配置从设备(HRP_S)---在负载分担组网中,谁 最先建立双机热备状态的防火墙会成为配置主设备;即最先启动双机热备功能的

HRP备份方式

1.自动备份 --- 默认开启的,能够自动 实时备份配置命令和 周期性备份状态信息

        主用设备每执行一次可备份命令,该命令都会立即被同步到备用设备。注意:对于这些可备份 命令,备用设备不能配置,只能等到主用设备的同步。

        对于不可备份命令---分别配置

        对于状态信息,周期性备份(部分状态信息)。

2.手工批量备份 --- 需要管理员手工触发的,每执行一次手工批量备份命令,主用设备就会立即同步一 次配置命令和状态信息。

3.快速备份 --- 仅适用于负载分担场景的,用来 应对报文来回路径不一致的场景。

        主要为了保证状态信息的及时同步,快速备份功能仅仅备份状态信息,是为了弥补自动备份的 时差问题。

        如果启动快速备份功能,主设备将 实时进行状态信息备份。

心跳链路探测报文

        心跳口必须是状态独立且独立具有IP地址的接口,且该接口不要参与到其他协议的工作过程中,以免产生不必要的影响。

HRP一致性检查报文

        该报文是用于检测双机热备状态下两台防火墙的双机热备配置是否一致,以及策略配置是否相同 的

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/977929.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LabVIEW形状误差测量系统

在机械制造领域,形状与位置公差(GD&T)直接影响装配精度与产品寿命。国内中小型机加工企业因形状误差导致的返工率高达12%-18%。传统测量方式存在以下三大痛点: ​ 设备局限:机械式千分表需人工读数,精度…

本地部署大模型: LM Studio、Open WebUI 与 Chatbox 全面对比以及选型指南

1. 工具概述 LM Studio 定位:专注于本地化大模型实验与推理的桌面工具,支持多模型并行、Hugging Face集成及离线运行。 核心功能: 图形化界面直接加载GGUF模型文件,支持NVIDIA/AMD GPU加速。 内置OpenAI兼容API,可搭…

百度觉醒,李彦宏渴望光荣

文 | 大力财经 作者 | 魏力 2025年刚刚开年,被一家名为DeepSeek的初创公司强势改写。在量化交易出身的创始人梁文锋的带领下,这支团队以不到ChatGPT 6%的训练成本,成功推出了性能可与OpenAI媲美的开源大模型。 此成果一经问世,…

mysql 迁移到人大金仓数据库

我是在windows上安装了客户端工具 运行数据库迁移工具 打开 在浏览器输入http://localhost:54523/ 账号密码都是kingbase 添加mysql源数据库连接 添加人大金仓目标数据库 添加好的两个数据库连接 新建迁移任务 选择数据库 全选 迁移中 如果整体迁移不过去可以单个单个或者几个…

Spring Cloud — Hystrix 服务隔离、请求缓存及合并

Hystrix 的核心是提供服务容错保护,防止任何单一依赖耗尽整个容器的全部用户线程。使用舱壁隔离模式,对资源或失败单元进行隔离,避免一个服务的失效导致整个系统垮掉(雪崩效应)。 1 Hystrix监控 Hystrix 提供了对服务…

【链 表】

【链表】 一级目录1. 基本概念2. 算法分析2.1 时间复杂度2.2 空间复杂度2.3 时空复杂度互换 线性表的概念线性表的举例顺序表的基本概念顺序表的基本操作1. 初始化2. 插入操作3. 删除操作4. 查找操作5. 遍历操作 顺序表的优缺点总结优点缺点 树形结构图形结构单链表基本概念链表…

记录锁,间隙锁,Next-Key Lock

记录锁,间隙锁,Next-Key Lock mysql的锁机制一、InnoDB行锁的种类1、记录锁(Record Lock)(1)不加索引,两个事务修改同一行记录(2)不加索引,两个事务修改同一表…

vue3父子组件props传值,defineprops怎么用?(组合式)

目录 1.基础用法 2.使用解构赋值的方式定义props 3.使用toRefs的方式解构props (1).通过ref响应式变量&#xff0c;修改对象本身不会触发响应式 1.基础用法 父组件通过在子组件上绑定子组件中定义的props&#xff08;:props“”&#xff09;传递数据给子组件 <!-- 父组件…

鸿蒙Next-方法装饰器以及防抖方法注解实现

以下是关于 鸿蒙Next&#xff08;HarmonyOS NEXT&#xff09;中 MethodDecorator 的详细介绍及使用指南&#xff0c;结合了多个技术来源的实践总结&#xff1a; 一、MethodDecorator 的概念与作用 MethodDecorator 是鸿蒙Next框架中用于装饰类方法的装饰器&#xff0c;属于 Ark…

快速入门——状态管理VueX

Vuex介绍 状态管理 每一个Vuex应用的核心都是一个store&#xff0c;与普通的全局对象不同的是&#xff0c;基于Vue数据与视图绑定的特点&#xff0c;当store中的状态发生变化时&#xff0c;与之绑定的视图也会被重新渲染。 store中的状态不允许被直接修改&#xff0c;改变sto…

java进阶学习脑图

今天开始分享我的第一篇博客&#xff0c;先放上我自己花费一个月完成的java进阶学习脑图吧&#xff01; 谁都想像R大一样对JVM可以知无不言&#xff0c;言无不尽&#xff1b; 谁都想像Doug Lea一样可以参与JUC这种核心模块的开发&#xff1b; 但是&#xff0c;不能只停留在想…

【设计师专属】智能屏幕取色器Pro|RGB/HEX双模式|快捷键秒存|支持导出文档|C++ QT

&#x1f525; “1秒锁定千万色值&#xff0c;让灵感不再流失&#xff01;” ✔ 像素级精准捕捉 ✔ 快捷键极速记录 ✔ 数据一键导出 ✔ 开发者/设计师效率神器 "还在手动截图比色&#xff1f;加班改稿只因色差&#xff1f;前端还原总被吐槽&#xff1f; &#x1f449;…

力扣 下一个排列

交换位置&#xff0c;双指针&#xff0c;排序。 题目 下一个排列即在组成的排列中的下一个大的数&#xff0c;然后当这个排列为降序时即这个排列最大&#xff0c;因为大的数在前面&#xff0c;降序排列的下一个数即升序。所以&#xff0c;要是想找到当前排列的下一个排列&…

在 HuggingFace 中使用 SSH 进行下载数据集和模型

SSH 是一种 安全通讯的协议&#xff0c;我们通过配置 SSH 的密钥 来在 Git 上实现 Huggingface 模型的命令行下载。 参考网址&#xff1a;https://huggingface.co/docs/hub/security-git-ssh 点击自己的头像&#xff0c;点击 Add SSH key 在 Windows 上&#xff0c;我们实现已…

【生成模型】【ComfyUI(三)】使用WebAPI批量调用ComfyUI

可以参考【生成模型】【ComfyUI&#xff08;一&#xff09;】Flux与Flux-Fill部署与API调用中Flux-Fill部分 1. 调整Workflow 我们要部署以下workflow 做两个修改 输入改为从Load Image(Base64) 读入图片&#xff0c;当然使用上面的从路径中读图也是可以的输出改为SaveImag…

【多模态大模型】端侧语音大模型minicpm-o:手机上的 GPT-4o 级多模态大模型

MiniCPM-o ,它是一款 开源、轻量级 的多模态大语言模型,目标是在手机等资源受限的环境中实现 GPT-4o 级别的多模态能力! 1. MiniCPM-o:小身材,大能量! MiniCPM-o 的名字已经暗示了它的核心特点:Mini (小巧) 和 CPM (中文预训练模型),最后的 “o” 则代表 Omnimodal …

【C++】深入理解List:双向链表的应用

凭时间赢来的东西&#xff0c;时间肯定会为之作证。 前言 这是我自己学习C的第七篇博客总结。后期我会继续把C学习笔记开源至博客上。 上一期笔记是关于C的vector类知识&#xff0c;没看的同学可以过去看看&#xff1a;【C】探索Vector&#xff1a;灵活的数据存储解决方案-CS…

Spring Cloud源码 - Eureka源码原理分析

Eureka源码原理分析 文章目录 Eureka源码原理分析一&#xff1a;启动过程源码1&#xff1a;初始化环境2&#xff1a;初始化上下文2.1&#xff1a;加载erueka-server配置文件2.2&#xff1a;构造实例信息管理器2.3&#xff1a;初始化erueka-client2.4&#xff1a;处理注册相关的…

2.23操作列表

操作列表 一&#xff1a;遍历整个列表 – for循环 names[xixi, gofy, haha] for name in names:print(f"{name} is very very good good")print(f"{name}&#xff0c;欢迎回家\n")xixi is very very good good xixi&#xff0c;欢迎回家gofy is very ver…

Solidity study

Solidity 开发环境 Solidity编辑器&#xff1a;Solidity编辑器是一种专门用于编写和编辑Solidity代码的编辑器。常用的Solidity编辑器包括Visual Studio Code、Atom和Sublime Text。以太坊开发环境&#xff1a;以太坊开发环境&#xff08;Ethereum Development Environment&am…