CLI举例:负载分担场景下的源NAT配置(主备设备共用同一个地址池)

本文主要是介绍CLI举例:负载分担场景下的源NAT配置(主备设备共用同一个地址池),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

CLI举例:负载分担场景下的源NAT配置(主备设备共用同一个地址池)

组网需求

如图1所示,企业的两台FW的业务接口都工作在三层,上下行分别连接路由器。FW与上下行路由器之间运行OSPF协议。上行接口连接同一个ISP。

现在希望两台FW以负载分担方式工作。正常情况下,部门A的用户发出的流量通过FW_A转发,部门B的用户发出的流量通过FW_B转发。当其中一台FW出现故障时,流量全部通过另一台FW转发,保证业务不中断。

本例以上下行均连接路由器的负载分担组网为例,实际上下行设备和接口根据实际场景判断是否需要配置OSPF,源NAT配置没有差异。

本例不适用上行接口连接两个不同的ISP的场景。

图1 负载分担场景下的源NAT配置组网

数据规划

项目

FW_A

FW_B

接口

GigabitEthernet 1/0/1

IP地址:10.2.0.1/24

安全区域:Untrust

GigabitEthernet 1/0/3

IP地址:10.3.0.1/24

安全区域:Trust

GigabitEthernet 1/0/7

IP地址:10.10.0.1/24

安全区域:DMZ

GigabitEthernet 1/0/1

IP地址:10.2.1.1/24

安全区域:Untrust

GigabitEthernet 1/0/3

IP地址:10.3.1.1/24

安全区域:Trust

GigabitEthernet 1/0/7

IP地址:10.10.0.2/24

安全区域:DMZ

OSPF

进程ID:10

区域标识:0

区域包含的网段:10.2.0.0/24、10.3.0.0/24、1.1.1.10/32

进程ID:10

区域标识:0

区域包含的网段:10.2.1.0/24、10.3.1.0/24、1.1.1.10/32

配置思路
  1. 分别在FW_A和FW_B上配置接口IP地址和安全区域,完成网络基本参数配置。
  2. 分别在FW_A和FW_B上配置OSPF。
  3. 由于FW_A和FW_B共用一个NAT地址池,主备设备都正常运行的情况下,两台FW可能会将不同主机发来的流量的源IP地址和源端口转换为同一个公网地址和公网端口。为避免出现端口冲突问题,需要为主备设备分配不同的端口范围。
  4. 分别在FW_A和FW_B上配置双机热备功能,包括配置接口监控、指定心跳口、启用快速备份功能等。
  5. 在FW_A上配置允许设备间交互OSPF报文及允许内网访问外网的安全策略。FW_A上配置的安全策略会自动备份到FW_B上。
  6. 在FW_A上配置NAT地址池。FW_A上配置的NAT地址池会自动备份到FW_B上。
  7. 在FW_A上配置源NAT策略,实现内网访问外网时自动进行源地址转换。FW_A上配置的源NAT策略会自动备份到FW_B上。
  8. 配置下行设备,使得正常情况下部门A用户发出的流量通过FW_A转发,部门B用户发出的流量通过FW_B转发。
  9. 在上行路由器上配置接口地址、指向ISP的静态路路由,同时配置OSPF使得FW和路由之间互相学习对方的路由。在下行路由器上配置接口地址,同时配置OSPF使得FW和路由之间互相学习对方的路由。具体配置请参见路由器的产品文档,本举例不作介绍。

操作步骤
  1. 配置接口IP地址和安全区域,完成网络基本参数配置。
    在FW_A上配置接口。# 配置接口IP地址。<FW_A> system-view
    [FW_A] interface GigabitEthernet 1/0/1
    [FW_A-GigabitEthernet 1/0/1] ip address 10.2.0.1 24
    [FW_A-GigabitEthernet 1/0/1] quit
    [FW_A] interface GigabitEthernet 1/0/3
    [FW_A-GigabitEthernet 1/0/3] ip address 10.3.0.1 24
    [FW_A-GigabitEthernet 1/0/3] quit
    [FW_A] interface GigabitEthernet 1/0/7
    [FW_A-GigabitEthernet 1/0/7] ip address 10.10.0.1 24
    [FW_A-GigabitEthernet 1/0/7] quit
    # 配置接口加入相应安全区域。[FW_A] firewall zone trust
    [FW_A-zone-trust] add interface GigabitEthernet 1/0/3
    [FW_A-zone-trust] quit
    [FW_A] firewall zone untrust
    [FW_A-zone-untrust] add interface GigabitEthernet 1/0/1 
    [FW_A-zone-untrust] quit
    [FW_A] firewall zone dmz
    [FW_A-zone-dmz] add interface GigabitEthernet 1/0/7 
    [FW_A-zone-dmz] quit在FW_B上配置接口。# 配置接口IP地址。<FW_B> system-view
    [FW_B] interface GigabitEthernet 1/0/1
    [FW_B-GigabitEthernet 1/0/1] ip address 10.2.1.1 24
    [FW_B-GigabitEthernet 1/0/1] quit
    [FW_B] interface GigabitEthernet 1/0/3
    [FW_B-GigabitEthernet 1/0/3] ip address 10.3.1.1 24
    [FW_B-GigabitEthernet 1/0/3] quit
    [FW_B] interface GigabitEthernet 1/0/7
    [FW_B-GigabitEthernet 1/0/7] ip address 10.10.0.2 24
    [FW_B-GigabitEthernet 1/0/7] quit
    # 配置接口加入相应安全区域。[FW_B] firewall zone trust
    [FW_B-zone-trust] add interface GigabitEthernet 1/0/3
    [FW_B-zone-trust] quit
    [FW_B] firewall zone untrust
    [FW_B-zone-untrust] add interface GigabitEthernet 1/0/1 
    [FW_B-zone-untrust] quit
    [FW_B] firewall zone dmz
    [FW_B-zone-dmz] add interface GigabitEthernet 1/0/7
    [FW_B-zone-dmz] quit在FW_A和FW_B上配置OSPF。# 在FW_A上配置OSPF。[FW_A] ospf 10
    [FW_A-ospf-100] import-route unr
    [FW_A-ospf-100] area 0
    [FW_A-ospf-100-area-0.0.0.0] network 10.2.0.0 0.0.0.255
    [FW_A-ospf-100-area-0.0.0.0] network 10.3.0.0 0.0.0.255
    # 在FW_B上配置OSPF。[FW_B] ospf 10
    [FW_B-ospf-100] import-route unr
    [FW_B-ospf-100] area 0
    [FW_B-ospf-100-area-0.0.0.0] network 10.2.1.0 0.0.0.255
    [FW_B-ospf-100-area-0.0.0.0] network 10.3.1.0 0.0.0.255

  2. 配置负载分担场景的NAT地址池端口分配功能。

    双机热备的负载分担场景下,两台FW共用同一个NAT地址池时,在NAPT模式下有可能两台设备分配的公网端口出现冲突。为了避免这种可能存在的冲突,需要在两台设备上分别配置各自可使用的NAT资源(包括公网IP地址和公网端口号)。此时,可以在主设备上配置hrp nat resource primary-group命令,备设备上会自动生成hrp nat resource secondary-group命令(如果主设备上配置的是hrp nat resource secondary-group命令,则备设备上将自动对应生成hrp nat resource primary-group命令)。[FW_A] hrp nat resource primary-group

  3. 配置双机热备功能。
    1. 在FW_A上配置双机热备功能。# 配置接口监控。[FW_A] hrp track interface GigabitEthernet 1/0/1
      [FW_A] hrp track interface GigabitEthernet 1/0/3
      # 指定心跳接口。[FW_A] hrp interface GigabitEthernet 1/0/7 remote 10.10.0.2
      # 启用快速备份功能。[FW_A] hrp mirror session enable
      负载分担场景下,报文的来回路径可能会不一致,务必启用会话快速备份功能,使一台FW的会话信息立即同步至另一台FW,保证内外部用户的业务不中断。# 启用双机热备。[FW_A] hrp enable

    2. 在FW_B上配置双机热备功能。

      # 配置接口监控。[FW_B] hrp track interface GigabitEthernet 1/0/1
      [FW_B] hrp track interface GigabitEthernet 1/0/3
      # 指定心跳接口。[FW_B] hrp interface GigabitEthernet 1/0/7 remote 10.10.0.1
      # 启用快速备份功能。[FW_B] hrp mirror session enable
      # 启用双机热备。[FW_B] hrp enable

  4. 在FW_A上配置安全策略允许设备间交互OSPF报文及允许内网用户访问外网。

    在FW_A上配置的安全策略会自动备份到FW_B上。

    HRP_M[FW_A] security-policy
    HRP_M[FW_A-policy-security] rule name policy_sec_1
    HRP_M[FW_A-policy-security-rule-policy_sec_1] source-zone local trust untrust
    HRP_M[FW_A-policy-security-rule-policy_sec_1] destination-zone local trust untrust
    HRP_M[FW_A-policy-security-rule-policy_sec_1] action permit
    HRP_M[FW_A-policy-security-rule-policy_sec_1] quit
    HRP_M[FW_A-policy-security] quit

  5. 配置NAT地址池,并允许端口转换,实现公网地址复用。

    在FW_A上配置的地址池会自动备份到FW_B上。

    HRP_M[FW_A] nat address-group addressgroup1
    HRP_M[FW_A-nat-address-group-addressgroup1] section 0 1.1.1.10 1.1.1.10
    HRP_M[FW_A-nat-address-group-addressgroup1] mode pat
    HRP_M[FW_A-nat-address-group-addressgroup1] route enable
    HRP_M[FW_A-nat-address-group-addressgroup1] quit

  6. 配置源NAT策略,使内网用户通过转换后的公网IP地址访问Internet。

    在FW_A上配置的NAT策略会自动备份到FW_B上。

    HRP_M[FW_A] nat-policy
    HRP_M[FW_A-policy-nat] rule name policy_nat_1
    HRP_M[FW_A-policy-nat-policy_nat_1] source-zone trust
    HRP_M[FW_A-policy-nat-policy_nat_1] destination-zone untrust
    HRP_M[FW_A-policy-nat-policy_nat_1] action source-nat address-group addressgroup1
    HRP_M[FW_A-policy-nat-policy_nat_1] quit
    HRP_M[FW_A-policy-nat] quit

  7. 配置下行设备,使得两台FW都正常运行的情况下,部门A用户发出的流量通过FW_A转发,部门B用户发出的流量通过FW_B转发。
  8. 在上行路由器上配置接口地址、指向ISP的静态路路由,同时配置OSPF使得FW和路由之间互相学习对方的路由。在下行路由器上配置接口地址,同时配置OSPF使得FW和路由之间互相学习对方的路由。具体配置请参见路由器的产品文档,本举例不作介绍。

结果验证
  1. 主备设备均正常运行情况下,分别在FW_A和FW_B上执行display hrp state命令,检查HRP的状态信息,显示以下信息表示HRP建立成功。

    HRP_M[FW_A] display hrp stateRole: active, peer: active                                                    Running priority: 49010, peer: 49010                                           Backup channel usage: 3%                                                       Stable time: 0 days, 5 hours, 1 minutes 
    HRP_S[FW_B] display hrp stateRole: active, peer: active                                                    Running priority: 49010, peer: 49010                                           Backup channel usage: 3%                                                       Stable time: 0 days, 5 hours, 1 minutes 

  2. 内网PC可以正常访问Internet表示安全策略配置成功。
  3. 分别在FW_A和FW_B上执行display nat-policy rule rule-name命令查看源NAT策略的命中次数,命中次数大于等于1即表示有数据流命中NAT策略。
  4. 分别在FW_A和FW_B上执行display firewall session table命令查询源地址为内网PC的私网地址的表项,查看本次NAT转换的信息。存在该表项,且NAT转换后的IP地址为NAT地址池中的地址,表示NAT策略配置成功。“[]”中的内容为NAT转换后的IP地址和端口。

     
    HRP_M<FW> display firewall session table
    Current Total Sessions : 1http  VPN:public --> public  10.3.2.55:2474[1.1.1.10:3761]-->3.3.3.3:80

  5. 当FW_A出现故障时,分别在FW_A和FW_B上执行display hrp state命令,检查HRP的状态信息,显示以下信息表示主备切换成功。

    HRP_M[FW_A] display hrp stateRole:standby, peer:  active (shoule be "active-active")                                                  Running priority: 49012, peer: 49010                                           Backup channel usage: 0%                                                       Stable time: 0 days, 0 hours, 0 minutes 
    HRP_S[FW_B] display hrp stateRole: active, peer: standby  (shoule be "active-active")                                                 Running priority: 49010, peer: 49012                                           Backup channel usage: 0%                                                       Stable time: 0 days, 0 hours, 1 minutes 

配置脚本
FW_AFW_B
#hrp mirror session enablehrp enablehrp interface GigabitEthernet 1/0/7 remote 10.10.0.2
#
hrp nat resource primary-group
#
hrp track interface GigabitEthernet 1/0/1
hrp track interface GigabitEthernet 1/0/3
#
interface GigabitEthernet 1/0/7ip address 10.10.0.1 255.255.255.0
#
firewall zone trustset priority 85add interface GigabitEthernet 1/0/3
#
firewall zone untrustset priority 5add interface GigabitEthernet 1/0/1
#
firewall zone dmzset priority 50add interface GigabitEthernet 1/0/7
#  
ospf 10 import-route unrarea 0.0.0.0network 10.2.0.0 0.0.0.255network 10.3.0.0 0.0.0.255
#    nat address-group addressgroup1mode pat route enable section 0 1.1.1.10 1.1.1.10
#    
security-policy  rule name policy_sec_1source-zone localsource-zone trustsource-zone untrustdestination-zone localdestination-zone trust  destination-zone untrustaction permit    
#    
nat-policy  rule name policy_nat_1source-zone trustdestination-zone untrustaction source-nat address-group addressgroup1
#hrp mirror session enablehrp enablehrp interface GigabitEthernet 1/0/7 remote 10.10.0.1
#
hrp nat resource secondary-group
#
hrp track interface GigabitEthernet 1/0/1
hrp track interface GigabitEthernet 1/0/3
#
interface GigabitEthernet 1/0/7ip address 10.10.0.2 255.255.255.0
#
firewall zone trustset priority 85add interface GigabitEthernet 1/0/3
#
firewall zone untrustset priority 5add interface GigabitEthernet 1/0/1
#
firewall zone dmzset priority 50add interface GigabitEthernet 1/0/7
#  
ospf 10 import-route unrarea 0.0.0.0network 10.2.1.0.0.0.255network 10.3.1.0 0.0.0.255
#    nat address-group addressgroup1mode pat route enable section 0 1.1.1.10 1.1.1.10
#    
security-policy  rule name policy_sec_1source-zone localsource-zone trustsource-zone untrustdestination-zone localdestination-zone trust  destination-zone untrustaction permit    
#    
nat-policy  rule name policy_nat_1source-zone trustdestination-zone untrustaction source-nat address-group addressgroup1

这篇关于CLI举例:负载分担场景下的源NAT配置(主备设备共用同一个地址池)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1008029

相关文章

Mysql虚拟列的使用场景

《Mysql虚拟列的使用场景》MySQL虚拟列是一种在查询时动态生成的特殊列,它不占用存储空间,可以提高查询效率和数据处理便利性,本文给大家介绍Mysql虚拟列的相关知识,感兴趣的朋友一起看看吧... 目录1. 介绍mysql虚拟列1.1 定义和作用1.2 虚拟列与普通列的区别2. MySQL虚拟列的类型2

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个

windos server2022里的DFS配置的实现

《windosserver2022里的DFS配置的实现》DFS是WindowsServer操作系统提供的一种功能,用于在多台服务器上集中管理共享文件夹和文件的分布式存储解决方案,本文就来介绍一下wi... 目录什么是DFS?优势:应用场景:DFS配置步骤什么是DFS?DFS指的是分布式文件系统(Distr

在MyBatis的XML映射文件中<trim>元素所有场景下的完整使用示例代码

《在MyBatis的XML映射文件中<trim>元素所有场景下的完整使用示例代码》在MyBatis的XML映射文件中,trim元素用于动态添加SQL语句的一部分,处理前缀、后缀及多余的逗号或连接符,示... 在MyBATis的XML映射文件中,<trim>元素用于动态地添加SQL语句的一部分,例如SET或W

关于Maven中pom.xml文件配置详解

《关于Maven中pom.xml文件配置详解》pom.xml是Maven项目的核心配置文件,它描述了项目的结构、依赖关系、构建配置等信息,通过合理配置pom.xml,可以提高项目的可维护性和构建效率... 目录1. POM文件的基本结构1.1 项目基本信息2. 项目属性2.1 引用属性3. 项目依赖4. 构

龙蜥操作系统Anolis OS-23.x安装配置图解教程(保姆级)

《龙蜥操作系统AnolisOS-23.x安装配置图解教程(保姆级)》:本文主要介绍了安装和配置AnolisOS23.2系统,包括分区、软件选择、设置root密码、网络配置、主机名设置和禁用SELinux的步骤,详细内容请阅读本文,希望能对你有所帮助... ‌AnolisOS‌是由阿里云推出的开源操作系统,旨

redis-cli命令行工具的使用小结

《redis-cli命令行工具的使用小结》redis-cli是Redis的命令行客户端,支持多种参数用于连接、操作和管理Redis数据库,本文给大家介绍redis-cli命令行工具的使用小结,感兴趣的... 目录基本连接参数基本连接方式连接远程服务器带密码连接操作与格式参数-r参数重复执行命令-i参数指定命

mysql-8.0.30压缩包版安装和配置MySQL环境过程

《mysql-8.0.30压缩包版安装和配置MySQL环境过程》该文章介绍了如何在Windows系统中下载、安装和配置MySQL数据库,包括下载地址、解压文件、创建和配置my.ini文件、设置环境变量... 目录压缩包安装配置下载配置环境变量下载和初始化总结压缩包安装配置下载下载地址:https://d

VUE动态绑定class类的三种常用方式及适用场景详解

《VUE动态绑定class类的三种常用方式及适用场景详解》文章介绍了在实际开发中动态绑定class的三种常见情况及其解决方案,包括根据不同的返回值渲染不同的class样式、给模块添加基础样式以及根据设... 目录前言1.动态选择class样式(对象添加:情景一)2.动态添加一个class样式(字符串添加:情

oracle中exists和not exists用法举例详解

《oracle中exists和notexists用法举例详解》:本文主要介绍oracle中exists和notexists用法的相关资料,EXISTS用于检测子查询是否返回任何行,而NOTE... 目录基本概念:举例语法pub_name总结 exists (sql 返回结果集为真)not exists (s