安全防御 --- 防火墙高可靠技术

news/2024/12/4 16:52:52/

防火墙高可靠技术(双机热备)

  • VRRP:负责的单个接口的故障检测和流量引导。每个VRRP备份组拥有一个虚拟的IP地址,作为网络的网关地址;在VRRP主备倒换时通过发送免费的ARP来刷新对接设备的MAC地址转发表来引导流量。
  • VGMP:将系统中所有的VRRP备份组集中管理,控制状态统一切换,保证出现故障时上下行流量能同步切换到备用防火墙。
  • HRP:负责双机之间的数据同步(华为专用)

1、VRRP

(1)VRRP状态切换

当Active设备出现接口、链路或整机故障时:

  • Active设备接口上的VRRP备份组状态进入initialize
  • Standby设备接口上的VRRP备份组状态切换到Active,发送免费ARP
  • 交换机上的MAC表刷新,出接口指向备用设备
  • PC发出的业务流量被引导到备用设备接口上进行转发

(2)VRRP不足:

  • 当防火墙上下行业务的端口上都配置了VRRP备份组时,这两个VRRP备份组是独立运行的,可能出现上下行两个VRRP备份组状态不一致的情况。
  • 例如:主用网关防火墙内网侧接口故障,VRRP倒换到备用网关防火墙,因此出去的溜溜从备用网关的防火墙上转发。但是对于外网侧的VRRP,主用网关防火墙上的VRRP依然是主,因此回程流量仍然会送到主用网关的防火墙上,但业务流量无法送回内网,导致业务中断。


附:产生原因

2、VGMP

(1)基本原理:

<1> 由于VRRP封装的VGMP报文是组播报文,不能跨越三层传输设备,因此在双击设备组网时,要求两台设备的心跳线要么是直连的,要么是通过二层交换机进行互联,不能通过三层设备互联。当防火墙上下行设备是路由器时,要求两台防火墙必须有直连的接口作备份通道。为此,USG6000V开发了另一种VGMP的报文封装格式。

<2> 此时VGMP的报文是单播报文。在原有的IP报头上增加了UDP头和VGMP扩展头,VGMP内部报文的格式没有变化。

(2)状态机:

VGMP管理组的主备状态决定了双机热备组网中的防火墙设备的主备状态,因此VGMP管理组的状态也可看做是防火墙设备的状态。

  • 主备模式:active -- initialize -- standby
  • 负载模式:active -- initialize -- standby -- load balance

(3)状态切换:

两台防火墙之间的VGMP状态主备切换的具体交互过程及动作分为以下三种情况:

  • 因接口或链路故障引起的切换

这一类故障发生时,主设备通过VGMP报文将状态信息和本端优先级立即发送到备用设备,备用设备比较报文中的优先级和本地优先级,如果满足切换条件将立即转换,瞬间完成业务流量的切换。

  • 因整机或心跳链路故障引起的切换

这种故障发生时,由于主设备无法发送状态通知消息到备用设备,因此只能依靠备机检测到心跳报文(VGMP hello报文)超时才能发现故障,因此切换时间为三个心跳报文周期。

  • 抢占流程

故障恢复后的切换流程,由于备用设备处于正常转发状态,等主机故障回复后再切换回去,因此基本上不会影响业务。

(4)状态切换三大原则:

  • 每个接口down时,VGMP管理组优先级降低2,计算公式为:VGMP管理组优先级 = VGMP管理组初始优先级 - N*2
  • 每台设备的VGMP管理组初始状态由用户指定(Active或Standby),Active优先级为65001,Standby的优先级为65000
  • VGMP管理组的状态决定了该设备的主备状态,也决定了VGMP管理组成员(VRRP备份或接口)的状态。

附:VGMP报文封装为什么不用TCP?

  • 简单高效:UDP协议不需要建立连接,不需要维护复杂的状态信息,因此在传输效率上比TCP协议高。
  • 实时性强:UDP协议不需要等待对端的响应信息,因此在实时性要求高的场景下,UDP协议更为适用。
  • 去除不必要的重传和拥塞控制:VGMP是在数据中心内部使用的协议,不涉及跨网络的传输,因此不需要TCP协议的重传机制和拥塞控制机制。

综上所述,VGMP使用UDP协议可以提高传输效率和实时性,并且去除不必要的重传和拥塞控制,适用于数据中心内部的虚拟网关管理。

3、HRP(Huawei Redundancy Protocol)

(1)产生:

  • 状态检测防火墙对于每一个会话连接都有一个会话表项与之对应,主用设备处理业务中创建了很多动态会话表项;而备用设备没有流量经过,因此没有创建会话表。如果备用设备切换为主用设备前,会话表项没有备份到备用设备,则会导致先前经过的主用设备的业务流量因为无法匹配会话表而中断。为了实现主用设备和备用设备平滑切换,必须在中用和备用设备间备份关键配置命令和会话表状态信息,为此防火墙引入HRP协议,实现防火墙双机之间动态状态数据和关键配置命令的实时备份
  • 双机热备组网中,指定心跳线作为专门的备份通道,用于备份配置命令和状态信息

(2)数据备份范围:

(3)备份通道状态:

当设备两边均对应配置心跳口后,防火墙会判断心跳接口的物理协议状态。

心跳链路一共存在5个状态:

  • running:正常运行
  • ready:正常运行。此接口为备用备份通道,当前未使用。
  • peerdown:本端正常,但是收不到对端的心跳报文。
  • invalid:未指定心跳口的ip地址,心跳口工作在二层。
  • down:心跳接口的物理状态和协议状态均为down

4、双机热备组网

(1)防火墙双机热备组网必须首先解决两个问题:

  • 防火墙必须能够检测到链路和设备故障
  • 防火墙检测到故障后能实现流量平滑切换

(2)工作流程:

(3)双击热备组网的建立和运行需解决以下5个关键问题:

  • 如何设定设备的主备状态?
  • 如何监控并发现接口或设备故障?
  • 发现故障后,如何保证设备之间可平滑切换?
  • 发生情况和故障后,如何引导流量?
  • 如何进行信息同步,保证主备切换后业务不中断?

5、双机热备组网拓扑搭建及配置 --- 主备备份

(1)拓扑图搭建:

 (2)配置IP地址:

  • PC1:

  • SW1:
[SW1]vlan 2
[SW1-vlan2]vlan 3
[SW1-vlan3]q
[SW1]int vlan 2
[SW1-Vlanif2]ip add 10.1.1.1 24
[SW1]int Vlan 3
[SW1-Vlanif3]ip add 10.1.2.1 24
[SW1]int g0/0/1
[SW1-GigabitEthernet0/0/1]port link-type access  --- 接口类型为access
[SW1-GigabitEthernet0/0/1]port default vlan 3 --- 接口划入vlan
[SW1]int g0/0/2
[SW1-GigabitEthernet0/0/2]port link-type access 
[SW1-GigabitEthernet0/0/2]port default vlan 3
[SW1]ip route-static 0.0.0.0 0 10.1.2.254 --- 配置缺省路由
  • PC2:

  • SW2:
[SW2]vlan 2
[SW2-vlan2]vlan 3
[SW2]int vlan 2
[SW2-Vlanif2]ip add 100.1.2.1 24
[SW2]int vlan 3
[SW2-Vlanif3]ip add 100.1.1.1 24
[SW2]int g0/0/3
[SW2-GigabitEthernet0/0/3]port link-type access --- 接口类型为access
[SW2-GigabitEthernet0/0/3]port default vlan 2 --- 接口划入vlan
[SW2]int g0/0/1
[SW2-GigabitEthernet0/0/1]port link-type access 
[SW2-GigabitEthernet0/0/1]port default vlan 3
[SW2]in g0/0/2
[SW2-GigabitEthernet0/0/2]port link-type a
[SW2-GigabitEthernet0/0/2]port default vlan 3
[SW2-GigabitEthernet0/0/2]q
[SW2]ip route-static 0.0.0.0 0 100.1.1.254 --- 配置缺省路由

(3)配置防火墙的IP地址以及静态路由:

<1> FW1:

  • 配置接口IP地址


  • 配置静态路由


<2> FW2:

  • 配置IP地址


  • 配置静态路由


(4)新建安全策略

(5)配置心跳线 --- 将FW1的安全策略同步给FW2

FW1和FW2之间拉一条心跳线

  • FW1:

  • FW2:

  • 将心跳线划入trust区


(6)配置双机热备

  • FW1:





  • FW2:



(7)同步配置:


测试:查看FW2上是否有了FW1上的安全策略

同步成功

(8)查看路由:


(9)测试:

  • ping

  • 断开SW1和FW1的连线
[SW1]int g0/0/1
[SW1-GigabitEthernet0/0/1]shutdown


查看链路切换情况:


切换成功

  • 恢复SW1的g0/0/1接口
[SW1-GigabitEthernet0/0/1]undo shutdown


6、双机热备组网拓扑搭建及配置 --- 负载分担

(1)拓扑搭建:

(2)配置新接PC端IP地址:

  • PC3:

  • PC4:

(3)交换机SW1和SW2上进行配置:

  • SW1:
[SW1]vlan 4
[SW1-vlan4]q
[SW1]int vlan 4
[SW1-Vlanif4]ip add 10.1.4.1 24
[SW1-Vlanif4]q
[SW1]int g0/0/4
[SW1-GigabitEthernet0/0/4]port link-type access
[SW1-GigabitEthernet0/0/4]port default vlan 4
[SW1]ip route-static 100.1.4.0 24 10.1.2.251 --- 静态路由
  • SW2:
[SW2]vlan 4
[SW2-vlan4]q
[SW2]int Vlanif 4
[SW2-Vlanif4]ip add 100.1.4.1 24
[SW2]int g0/0/4
[SW2-GigabitEthernet0/0/4]port link-type access 
[SW2-GigabitEthernet0/0/4]port default vlan 4
[SW2]ip route-static 10.1.4.0 24 100.1.1.251 --- 静态路由

(4)在FW1上配置静态路由(上步已经配置双机热备,FW2上直接同步,无需配置)



同步后在FW2上查看:

同步成功

(5)配置两组虚拟网关:

  • 将双机热备的运行模式改为负载分担

  • FW1:


  • FW2:


  • 检测负载分担配置情况:


(6)开启ping服务,FW1端开启,另一端自动同步:

(7)增加安全策略(FW1端配置):

(8)测试:

<1> 链路正常

  • PC1:


  • PC4:


<2> 断开SW1的g0/0/1:

[SW1]int g0/0/1
[SW1-GigabitEthernet0/0/1]shutdown 



http://www.ppmy.cn/news/48350.html

相关文章

阿里,字节,拼多多,B站挨个面试一遍,你们猜哪个待遇最高?

我面试的是软件测试岗位&#xff0c;去年中旬的时候从原来的公司离职了&#xff0c;不是工作不好&#xff0c;而是公司发展速度太慢&#xff0c;自己干了几年&#xff0c;也没有太大的成长。以我目前的工作经验和实力&#xff0c;我认为准备一两个月&#xff0c;进大厂不是什么…

手把手教你实现el-table实现跨表格禁用选项,以及禁用选择后,对应的全选按钮也要禁用任何操作

哈喽 大家好啊 今天我要实现不能跨表格选择&#xff0c;如果我选择了其中一个表格的选项后&#xff0c;那么其他的表格选项则被禁用 然后我选择了其中一个表格行&#xff0c;我其他的表格选项则应该被禁用 实现代码&#xff1a; 其中关键属性&#xff1a; selectable仅对 typ…

【越早知道越好】的道理——能够大大提升效率的【快捷键】

文章目录 1️⃣虚拟桌面⚜️第一步&#xff1a;打开任务视图⚜️第二步&#xff1a;创建桌面⚜️第三步&#xff1a;桌面切换⚜️第四步&#xff1a;桌面删除 2️⃣窗口切换3️⃣桌面分屏⚜️如何分屏 前言&#x1f9d1;‍&#x1f3a4;&#xff1a;作为程序员&#x1f468;‍&…

Linux基础内容(20)—— 共享内存

Linux基础内容&#xff08;19&#xff09;—— 进程间通信(介绍与管道内容)_哈里沃克的博客-CSDN博客https://blog.csdn.net/m0_63488627/article/details/130034918?spm1001.2014.3001.5502 目录 1.共享内存的原理 2.共享内存的概念和特点 创建共享内存 共享内存的形式…

第七章节 spring AOP

《Spring》篇章整体栏目 ————————————————————————————— 【第一章】spring 概念与体系结构 【第二章】spring IoC 的工作原理 【第三章】spring IOC与Bean环境搭建与应用 【第四章】spring bean定义 【第五章】Spring 集合注入、作用域 【第六章】…

什么是计算量flops,什么是参数量params?

flops与params 计算量对应我们之前的时间复杂度&#xff0c;参数量对应于我们之前的空间复杂度&#xff0c;这么说就很明显了 也就是计算量要看网络执行时间的长短&#xff0c;参数量要看占用显存的量 其中最重要的衡量CNN 模型所需的计算力就是flops&#xff1a; FLOPS&…

显存不够用?一种大模型加载时节约一半显存的方法

Loading huge PyTorch models with linear memory consumption 本文主要介绍了一种用于加载巨大模型权重时节约接近一半显存的方法 首先&#xff0c;创建一个模型: import torch from torch import nnclass BoringModel(nn.Sequential):def __init__(self):super().__init__…

【Leetcode -剑指Offer 22.链表中倒数第k个结点 -203.移除链表元素】

Leetcode Leetcode -剑指Offer 22.链表中倒数第k个结点Leetcode -203.移除链表元素 Leetcode -剑指Offer 22.链表中倒数第k个结点 题目&#xff1a;输入一个链表&#xff0c;输出该链表中倒数第k个节点。为了符合大多数人的习惯&#xff0c;本题从1开始计数&#xff0c;即链表…