网络环境介绍:
公司内网有一台web服务器,地址是192.168.100.100,web服务端口为80,并且为这台web服务器申请了DNS A记录的域名解析服务,解析记录是公司出口ip地址100.100.100.100。在办公区网络环境里,还有内网192.168.10.0网段,需要通过申请的域名来访问公司内网的192.168.100.100的web服务。
做法是在防火墙的出口,做一条端口映射,100.100.100.100:80到192.168.100.100:80的端口映射。
问题来了,做好端口映射以后,其他外部网络通过域名访问公司的web服务是正常的,但是公司内网用户通过域名访问公司自己的web服务,却无法访问;而公司内网用户通过192.168.100.100:80私有地址访问,是正常的。这种情况,就是因为做好端口映射以后,访问web服务的流量在响应的时候流量没有回流到防火墙导致的。
 
原因分析:
如上图,假如是192.168.10.10通过申请的域名访问192.168.100.100的web服务。这里假设访问的源端口是10000,目标端口是80,数据包分析如下:
C2主机发起web请求.因为通过域名访问的,DNS解析服务正常,那么访问目标就是100.100.100.100:80
192.168.10.10:10000--->100.100.100.100:80
 
数据包最终会被路由到防火墙上,防火墙检查访问的目的地址,匹配到它的端口映射策略,将目标地址改为对192.168.100.100的访问,建立起一个针对目标ip地址转换的NAT会话表
192.168.10.10:10000--->192.168.100.100:80
 
然后数据包到会被转发到192.168.100.100服务器上并会响应192.168.10.10主机的请求,将上述访问的源目ip地址及端口进行倒转,并将数据包交给它的网关处理,图中就是R1路由器
192.168.100.100:80--->192.168.10.10:10000
 
R1路由器检查访问者的源ip和目标ip地址,发现目标ip地址是192.168.10.10,是R1路由器一个可路由的内网ip地址,就会将数据包直接路由到C2主机上
C2主机接收到数据包,检查数据包的源ip和端口是192.168.100.100:80,发现其本身并没有这样一个http会话与之相匹配,就是说C2主机并没有主动发起对192.168.100.100:80的访问,发起的是对100.100.100.100:80的访问,那么C2主机就会丢弃这个数据包,导致内网用户通过域名或者公网ip地址访问自己的内网服务器不通的现象。
192.168.100.100:80--->192.168.10.10:10000
 
解决方法的思路:内网主机在访问的时候,将web服务的响应流量回流到防火墙上来,接受防火墙的处理。就是说,在流量经过防火墙的时候,将源地址做一个修改,使得R1路由器在路由数据包的时候,还把这个数据包路由到防火墙上来,而不是在内网直接路由;防火墙上有记录它所做的相应修改(做源地址转换,并维护这个NAT会话表即可),再把之前的修改给改回来,再转发给内网主机即可。
内网主机对通过公网对内网服务器访问的时候,流量在经过防火墙时,将内网主机的ip地址修改为一个外网ip地址(源NAT转换),并做好及维护相应的NAT会话的记录,这样服务器在接收到数据包之后,发现源ip地址是一个外网ip地址,这样数据流量会回流到防火墙,防火墙检查相应的源NAT转换策略,发现可以匹配,则进行源NAT的还原,并经数据包路由到内网的主机中。

nat address-group hairpin 0   ----建立一个NAT地址组
mode pat    -----模式 PAT(接口转换)
section 0 1.1.1.1 1.1.1.1   ----(本例只包含一个地址:1.1.1.1,此地址为虚拟地址,不必真实存在,不与内网冲突即可)

nat-policy     ---NAT策略视图
rule name wchairpin   ---新建一个NAT条目
source-zone trust    ---匹配源安全域为TRUST
destination-zone trust    ----目的安全域也为TRUST
source-address 10.236.46.0 0.0.0.255      ----匹配需要NAT的源地址
destination-address 10.236.46.5 0.0.0.0    -----匹配访问的目的地址
destination-address 10.236.46.9 0.0.0.0
destination-address 10.236.46.10 0.0.0.0
action nat address-group hairpin         ----启用改条策略,并制定NAT转换地址为hairpin地址组

至此,内网已可以正常访问公网映射的服务器。

华为USG防火墙nat环回配置的更多相关文章

  1. 华为USG6000V防火墙简单配置案例

    如图,PC1是企业内网用户,要通过防火墙NAT方式( 1.1.1.105-1.1.1.106 )访问Internet,Server是企业的FTP服务器,通过静态NAT方式供外网用户访问,对外的地址是1 ...

  2. CentOS下配置iptables防火墙 linux NAT(iptables)配置

    CentOS下配置防火墙 配置nat转发服务CentOS下配置iptables防火墙 linux NAT(iptables)配置 CentOS下配置iptables 1,vim /etc/syscon ...

  3. 华为路由器NAT基本配置命令

    NAT地址转换 静态 [R1]int g0/0/0 [R1-GigabitEthernet0/0/0]nat static global 202.169.10.5 inside 172.16.1.1 ...

  4. eNSP上NAT的配置

    NAT介绍: 早在20世纪90年代初,有关RFC文档就提出了IP地址耗尽的可能性.IPv6技术的提出虽然可以从根本上解决地址短缺的问题,但是也无法立刻替换现有成熟且广泛应用的IPv4网络.既然不能 立 ...

  5. 虚拟机网络NAT模式配置静态IP

    虚拟机网络连接方式 安装好虚拟机以后,在网络连接里面可以看到多了两块网卡: 其中VMnet1是虚拟机Host-only模式的网络接口,VMnet8是NAT模式的网络接口. 虚拟机常见有三种网络连接方式 ...

  6. Linux防火墙简介 – iptables配置策略

    Linux防火墙简介 – iptables配置策略 Netfilter/iptables简介 要想真正掌握Linux防火墙体系,首先要搞清楚Netfilter和iptables的关系,Netfilte ...

  7. USG防火墙基础

    http://support.huawei.com/huaweiconnect/enterprise/thread-331003.html 华为防火墙产品线 安全区域 1.     默认防火墙区域 T ...

  8. VirtualBox NAT Network配置

    VirtualBox NAT Network配置(OSX上的) VirtualBox的5种连接方式 NAT :虚拟机之间不能互通 NAT网络 :本文对象 桥接 :一般情况下虚拟机无法设置静态IP,并且 ...

  9. 虚拟机NAT网络配置

    今天虚拟机NAT模式配置网络遇到一个奇葩问题.主机能ping同虚拟机时,虚拟机不能ping同主机.相反虚拟机ping通主机时,主机ping不通虚拟机. 最后花了一个小时,终于可以互通了,做一个记录: ...

随机推荐

  1. reduce,map,filter 的用法

    # filter用法 (对每一个数据进行筛选,满足条件的就保留)# 1,filter(功能函数,容器类型数据)# 2,过滤出来是一个地址,用list,或tuple进行包装# 3,过滤出来的是原容器类型 ...

  2. Windows机器配置启动加载器的高级选项后,机器出现蓝屏,无法RDP

    问题描述: 虚拟机重启后出现蓝屏,需要排查原因 蓝屏界面如下: 排查结果: 1.Console发现机器停留在上述蓝屏界面,按F8后,机器可以正常启动并成功连接:但通过console再次重启后,又会进入 ...

  3. java常用类String

    String: String类: 代表字符串 是一个final类,代表不可变的字符序列 字符串是常量,用双引号引起来表示.值在创建后不可更改 String对象的字符内容是存储在一个字符数组Value[ ...

  4. sqlmap日常使用

    收集的一些技巧资源来之互联网 -u #注入点 -f #指纹判别数据库类型 -b #获取数据库版本信息 -p #指定可测试的参数(?page=1&id=2 -p "page,id&qu ...

  5. 关于之前玩emacs记的些笔记

    移动 C-v 向前翻页 M-v 向后翻页 C-l 当前行居中显示 继续按会依次到上,下,中   C-x C-c 退出 C-g    退出一个正在运行的命令,还可以取消数字参数和只输入到一半的命令   ...

  6. JavaSE(下)

    11.抽象的(abstract)方法是否同时是静态的(static),是否可同时是本地方法(native),是否可同时被synchronized? 都不能. 抽象方法需要子类重写,而静态的方法是无法被 ...

  7. Tomcat性能调优实战

    今日帮朋友做了tomcat性能调优的实际操作,心得记录一下. 服务器:Windows2017 配置:CPU 4 内存 8G Tomcat8.0+版本. 压力测试工具:apache-jmeter-4.0 ...

  8. 分布式系统中session一致性问题

    业务场景 在单机系统中,用户登陆之后,服务端会保存用户的会话信息,只要用户不退出重新登陆,在一段时间内用户可以一直访问该网站,无需重复登陆.用户的信息存在服务端的 session 中,session中 ...

  9. 控制UI界面

    在android中,一共有四种方式. 第一种:使用XML布局文件控制UI界面 关键步骤有2个: 1.在Android应用的res/layout目录下编写,创建一个项目,eclipse会自动生成一个xm ...

  10. CentOS7 reset脚本,用于初始化新的虚拟机

    能用,有待完善 CentOS7测试 哈哈 #!/bin/bash #************************************************************** #Au ...