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

相关文章

IDEA与JDK、Maven安装配置完整步骤解析

《IDEA与JDK、Maven安装配置完整步骤解析》:本文主要介绍如何安装和配置IDE(IntelliJIDEA),包括IDE的安装步骤、JDK的下载与配置、Maven的安装与配置,以及如何在I... 目录1. IDE安装步骤2.配置操作步骤3. JDK配置下载JDK配置JDK环境变量4. Maven配置下

Springboot的自动配置是什么及注意事项

《Springboot的自动配置是什么及注意事项》SpringBoot的自动配置(Auto-configuration)是指框架根据项目的依赖和应用程序的环境自动配置Spring应用上下文中的Bean... 目录核心概念:自动配置的关键特点:自动配置工作原理:示例:需要注意的点1.默认配置可能不适合所有场景

Nginx配置系统服务&设置环境变量方式

《Nginx配置系统服务&设置环境变量方式》本文介绍了如何将Nginx配置为系统服务并设置环境变量,以便更方便地对Nginx进行操作,通过配置系统服务,可以使用系统命令来启动、停止或重新加载Nginx... 目录1.Nginx操作问题2.配置系统服android务3.设置环境变量总结1.Nginx操作问题

Keepalived+Nginx双机配置小结

《Keepalived+Nginx双机配置小结》本文主要介绍了Keepalived+Nginx双机配置小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1.1 软硬件要求1.2 部署前服务器配置调优1.3 Nginx+Keepalived部署1.3

Apache伪静态(Rewrite).htaccess文件详解与配置技巧

《Apache伪静态(Rewrite).htaccess文件详解与配置技巧》Apache伪静态(Rewrite).htaccess是一个纯文本文件,它里面存放着Apache服务器配置相关的指令,主要的... 一、.htAccess的基本作用.htaccess是一个纯文本文件,它里面存放着Apache服务器

nginx配置多域名共用服务器80端口

《nginx配置多域名共用服务器80端口》本文主要介绍了配置Nginx.conf文件,使得同一台服务器上的服务程序能够根据域名分发到相应的端口进行处理,从而实现用户通过abc.com或xyz.com直... 多个域名,比如两个域名,这两个域名其实共用一台服务器(意味着域名解析到同一个IP),一个域名为abc

nginx生成自签名SSL证书配置HTTPS的实现

《nginx生成自签名SSL证书配置HTTPS的实现》本文主要介绍在Nginx中生成自签名SSL证书并配置HTTPS,包括安装Nginx、创建证书、配置证书以及测试访问,具有一定的参考价值,感兴趣的可... 目录一、安装nginx二、创建证书三、配置证书并验证四、测试一、安装nginxnginx必须有"-

springboot rocketmq配置生产者和消息者的步骤

《springbootrocketmq配置生产者和消息者的步骤》本文介绍了如何在SpringBoot中集成RocketMQ,包括添加依赖、配置application.yml、创建生产者和消费者,并展... 目录1. 添加依赖2. 配置application.yml3. 创建生产者4. 创建消费者5. 使用在

SpringBoot使用Jasypt对YML文件配置内容加密的方法(数据库密码加密)

《SpringBoot使用Jasypt对YML文件配置内容加密的方法(数据库密码加密)》本文介绍了如何在SpringBoot项目中使用Jasypt对application.yml文件中的敏感信息(如数... 目录SpringBoot使用Jasypt对YML文件配置内容进行加密(例:数据库密码加密)前言一、J

MySQL zip安装包配置教程

《MySQLzip安装包配置教程》这篇文章详细介绍了如何使用zip安装包在Windows11上安装MySQL8.0,包括下载、解压、配置环境变量、初始化数据库、安装服务以及更改密码等步骤,感兴趣的朋... 目录mysql zip安装包配置教程1、下载zip安装包:2、安装2.1 解压zip包到安装目录2.2