经过前面几篇贴子的介绍,相信大家已经对源NAT和NAT Server有了相当了解。NAT功能就像一个武林高手,可内可外,游刃有余,那么这“一内一外”能否配合使用呢?答案当然是肯定的!
如果需要同时改变报文的源地址和目的地址,就可以配置“源NAT+NAT server”,华为防火墙称此类NAT配置为双向NAT。这里要注意:双向NAT不是一个单独的功能,他仅仅是源NAT和NAT Server的组合。这里“组合”的含义是针对同一条流(例如外网主机访问内网服务器的流量),在其经过防火墙时同时转换报文的源地址和目的地址。大家千万不能理解为“防火墙上同时配置了源NAT和NAT Server就是双向NAT”,这是不对的,因为源NAT和NAT Server可能是为不同流配置的。
之前介绍源NAT功能时,强叔为了更利于大家理解相关概念和原理,都是按照内网用户访问外网资源的思路进行组网设计和验证的。实际上,源NAT还可以根据报文的源地址和目的地址所在安全区域进行分类:

1、域间NAT

报文的源地址和目的地址属于不同的安全区域。按照转换报文的方向,又可以分为以下两类:

(1)NAT Inbound(外网访问内网)

报文由低安全级别的安全区域向高安全级别的安全区域方向传输时,基于源地址进行的转换。一般来说,NAT Inbound都会和NAT Server配合使用。

(2)NAT Outbound(内网访问外网)

报文由高安全级别的安全区域向低安全级别的安全区域方向传输时,基于源地址进行的转换。之前介绍的“内网用户访问外网资源”场景大多使用NAT Outbound。
2、域内NAT(内网访问内网)

报文的源地址和目的地址属于相同的安全区域。一般来说,域内NAT都会和NAT Server配合使用,单独配置域内NAT的情况较少见。
当域间NAT或域内NAT和NAT Server一起配合使用时,就实现了双向NAT。当然,上述内容的一个大前提就是:合理设置安全区域的级别并规划网络——内网设备属于Trust域(高级别),内网服务器属于DMZ域(中级别),外网设备属于Untrust域(低级别)。
双向NAT从技术和实现原理上讲并无特别之处,但是他和应用场景有着强相关性。究竟什么时候需要配置双向NAT?配置后有什么好处?不配置双向NAT行不行?这都是实际规划和部署网络时需要思考的问题,且听强叔一一道来。

1、NAT Inbound+NAT Server
下图示意了一个最常见的场景:外网PC访问内网服务器,防火墙做服务器的网关。这个时候我们一般会用到的NAT技术是…(画外音:“强叔,我知道,是NAT Server!这个场景不就是NAT Server的典型场景吗?”)没错,大家果然认真看了强叔之前的贴子!但是强叔下面要讲的是如何在这个场景中应用双向NAT,以及这么做的好处,大家接着看吧。

server以公网IP对外提供服务,防火墙上配置NAT Server,这个大家肯定没有疑问。同时,防火墙上配置NAT Inbound,令PC以私网IP访问server,这个大家可能有疑问,别着急,我们先来看看具体配置。
例1 配置NAT Inbound+NAT Server
#
 nat address-group 1 10.1.1.20 10.1.1.25  //地址池中的IP为私网IP ,且和server的私网IP同网段
 nat server 0 global 210.1.1.15 inside 10.1.1.3
#
nat-policy interzone dmz untrust inbound
 policy 1
  action source-nat
  policy destination 10.1.1.3 0  //由于防火墙先做NAT Server转换,再做源NAT转换,所以此处的目的IP是NAT Server转换后的IP
  address-group 1
这里NAT Server的配置和以前见过的类似,但是源NAT的配置和以前见过的不一样:以前地址池中配置的都是公网地址,而这次配置的却是私网地址。
我们通过下图再来看一下报文的地址转换过程:PC访问server的流量经过防火墙时,目的地址(server的公网地址)通过NAT Server转换为私网地址,源地址(PC的公网地址)通过NAT Inbound也转换为私网地址,且和server的私网地址同网段,这样就同时转换了报文的源地址和目的地址,即完成了双向NAT转换。当server的回应报文经过防火墙时,再次做双向NAT转换,报文的源地址和目的地址均转换为公网地址。

从PC上ping server,通过防火墙上的会话表和Server-map表可以更清楚的看到双向NAT转换:PC的地址通过NAT Inbound转换为私网地址,而server的地址也按照NAT Server的Server-map表转换为私网地址。

好了,我们回过头来看为什么要配置NAT Inbound吧。如果不配置NAT Inbound,行不行?行!不配置NAT Inbound并不影响PC访问server。那配置NAT Inbound有什么好处?好处就是server上可以不用设置网关,当然,前提条件是地址池中的地址需要和server的私网地址同网段。当server回应PC时,server发现自己的地址和目的地址在同一网段,这时server就不会去查路由,而是发送ARP广播报文询问目的地址对应的MAC地址。由于目的地址是地址池中的地址,所以他没有对应的MAC地址,但是防火墙此时挺身而出,防火墙将自己与server直连接口的MAC地址发给server,告诉server“把回应报文给我吧”,所以回应报文将转发到防火墙上。由于server回应报文是通过二层转发,而不是三层转发,所以server上不用配置网关。也许有人说“配置网关还是挺方便的,不用配置NAT Inbound这么麻烦吧”如果只有一台服务器时,的确感受不到有什么好处,但是如果有几十台甚至上百台服务器需要配置或修改网关时,我们就会发现配置NAT Inbound是多么方便了。
如果对之前的组网做一点改变,增加一个Trust区域,该域内的PC2要访问server时,我们该如何配置双向NAT呢?和之前相比,报文的源地址所在安全域发生了变化,原来是Untrust域到DMZ域的报文(Inbound方向),现在变成了Trust域到DMZ域的报文(Outbound方向),所以双向NAT也变化为NAT Outbound+NAT Server,它的转换原理和NAT Inbound+NAT Server完全一样,只不过源NAT的转换方向发生了改变而已。

2、域内NAT+NAT Server
域内NAT的场景多见于小型网络,如下图中的PC和server通过交换机与防火墙相连,管理员在规划网络时“偷懒”,将PC和server置于同一安全区域,并分配相同网段地址。

此时,如果希望PC像外网用户一样通过公网地址访问server,就要在防火墙上配置NAT Server。到此就配置完了吗?我们通过下图来看看吧:如果只配置了NAT Server,报文到达防火墙后转换目的地址,server回应报文时发现自己的地址和目的地址在同一网段,这就和之前分析的组网是同样情况了——server通过二层转发报文,回应报文经交换机直接转发到PC,不会经过防火墙转发!

所以,如果希望提高内网的安全性,让回应报文也经过防火墙,就需要配置域内NAT。下面列出了关键的配置步骤。地址池中的地址可以是公网地址,也可以是私网地址,关键是不能和server的私网地址在同一网段。域内NAT的配置和域间NAT几乎完全一样,只不过前者应用在域内做NAT转换,后者应用在域间做NAT转换。
例2 配置域内NAT+NAT Server
#
 nat address-group 1 210.1.1.20 210.1.1.20
 nat server 0 global 210.1.1.15 inside 10.1.1.3
#
nat-policy zone trust  //注意是域内NAT
 policy 1
  action source-nat
  policy destination 10.1.1.3 0  //此处的目的IP是NAT Server转换后的IP
  address-group 1

从PC上ping server,通过防火墙上的会话表和Server-map表可以看到:PC的地址通过域内NAT转换为公网地址,server的地址按照NAT Server的Server-map表转换为私网地址。双向NAT转换后,server回复报文时发现自己的地址和目的地址不在同一网段,此时就需要查路由,通过三层转发报文,所以回应报文需经过防火墙转发。

如果在上面组网的基础上做一个变化,将PC和server分开,通过不同的接口和防火墙相连,此时应该如何配置双向NAT呢?在这个组网中所有报文都需要经过防火墙转发,只配置NAT Server是可以的。如果要配置双向NAT,那么就是域内NAT+NAT Server,具体配置方法和上面是类似的,此处就不再介绍了。

其实双向NAT的原理和配置并不复杂,关键是要想明白NAT转换的方向和转换后地址的作用,而不要纠结于转换后是公网地址还是私网地址。双向NAT并不是必配的功能,有时只配置源NAT或NAT Server就可以达到同样的效果,但是灵活应用双向NAT可以起到简化网络配置、方便网络管理的作用,也就达到了一加一大于二的效果!

转载于:https://blog.51cto.com/hanjh8/1580002

NAT篇 双剑合璧,无往不利——双向NAT相关推荐

  1. NAT 网络地址转换技术(一)NAT原理介绍:静态NAT、动态NAT、NAPT、Easy IP、NAT ALG、NAT服务器、双向NAT技术

    文章目录 出现原因 基本概念 NAT技术基本原理 源NAT技术 静态NAT 动态NAT NAPT Easy IP NAT ALG NAT服务器 双向NAT技术 域间双向NAT(NAT Server+源 ...

  2. 安全防御(二)--- 防火墙域间双向NAT、域内双向NAT、基于VRRP的双机热备

    目录 一.防火墙支持那些NAT技术,主要应用场景是什么? 二.当内网PC通过公网域名解析访问内网服务器时,会存在什么问题,如何解决?请详细说明 三.防火墙使用VRRP实现双机热备时会遇到什么问题,如何 ...

  3. 100集华为HCIE安全培训视频教材整理 | 双向NAT技术

    学习视频来源:<乾颐堂HCIP-HCIE-security安全 2019年录制> 场景: 域间双向NAT 域内双向NAT 解决:内部主机访问服务器,需要经过防火墙

  4. 防火墙实验二——实现域间、域内双向NAT、双机热备实验

    实验的拓扑图 这个图是基于防火墙一的图,里面的基本配置都是基于上一个实验来进行的 图片里面交换机.防火墙等的配置 域间双向NAT 首先建立一个新的域间双向的NAT策略 对于源转换地址池的配置 对于目的 ...

  5. NGFW_双向NAT

    一,双向NAT简介 双向NAT指在转换过程中同时转换报文的源信息和目的信息.双向NAT不是一个单独的功能,而是源NAT和目的NAT的组合.双向NAT是针对同一条流量,在其经过防火墙的同时转换报文的源地 ...

  6. 华为防火墙双向NAT

    案例1 如图所示,主机1与主机2之间处在同网段,且主机1与主机2之间通过交换机一般来说是可以正常进行二层通信的,且其通信流量不通过防火墙,如若主机2是一台服务器,主机1是一台内网的主机,这时我们不能确 ...

  7. 华为防火墙企业双出口专线,配置策略路由实现多个ISP出接口的智能选路和双向NAT

    一.组网需求 1:企业有二条专线接入,当其中一条出现故障时,自动切换至另外一条,保障网络访问正常. (a)要求PC1从dx专线(1.1.1.2/24)访问外网PC,PC2从yd专线(2.2.2.2/2 ...

  8. Spring Cloud Alibaba 实战 | 第十二篇: 微服务整合Sentinel的流控、熔断降级,赋能拥有降级功能的Feign新技能熔断,实现熔断降级双剑合璧(JMeter模拟测试)

    文章目录 一. Sentinel概念 1. 什么是Sentinel? 2. Sentinel功能特性 3. Sentinel VS Hystrix 二. Docker部署Sentinel Dashbo ...

  9. Libp2p - IPFS 与 Polkadot :双剑合璧会有时

    Libp2p - IPFS 与 Polkadot:双剑合璧会有时 波卡之中的IPFS protocol Substrate与IPFS: Libp2p的"中继"理念 生态互赢:为什么 ...

  10. IDA+OD双剑合璧=逆向无敌

    标 题: [原创]IDA+OD双剑合璧=逆向无敌 作 者: Tennn 时 间: 2015-12-12,22:25:19 链 接: http://bbs.pediy.com/showthread.ph ...

最新文章

  1. JS滚轮事件(mousewheel/DOMMouseScroll)了解
  2. pilt图像处理_详解python opencv、scikit-image和PIL图像处理库比较
  3. wxWidgets:wxPropertyGrid概述
  4. 笑话(15) 这是地球
  5. 在商城系统开发时遇到商品的多级分类,为增强扩展性,子类可以任意添加,此类问题数据库如何设计...
  6. Win11和Win10有什么区别 Win11和Win10区别对比
  7. java引用复制_Java中引用的浅复制和深复制
  8. 基于深度学习的目标检测(object detection)—— rcnn、fast-rcnn、faster-rcnn、SSD、YOLO
  9. c# textbox和listbox多行显示
  10. 单片机c语言按键防抖程序,单片机按键防抖子程序详情解说 - 全文
  11. 网易云热评 《十年》
  12. Win11麦克风有回音怎么消除 Win11麦克风回声怎么调
  13. C语言编程error c2236:unexpected ‘struck‘ _ _;原因
  14. 【Windows MTU】Windows上最大传输单元MTU值的查看和设置
  15. 小米手机微信无法连接到服务器1-1,小米1S系统版本低不能登录微信解决办法
  16. ModelCoder:实现汽车四轮转向控制系统的建模仿真
  17. 特殊数字符号整理 - 圆圈数字
  18. 淘宝滑块的解决方法和api接口
  19. 联发科技2023届提前批IC笔试(题目)
  20. html使用阿里图标库(iconfont)制作字体图标

热门文章

  1. 鸿蒙app安卓版包,支付宝鸿蒙版本下载-支付宝鸿蒙app最新版 v10.2.8.7000-优盘手机站...
  2. linux中程序定时重启脚本,linux 程序定时重启脚本
  3. linux mysql 源码包,Linux下MySQL 5.5.15源码包编译安装
  4. WPS怎么统计相同名称的数据_批量操作同一格式的多表格汇总统计
  5. C# string.Format json格式字符串报错”输入字符串的格式不正确“
  6. ASP.NET中 CompareValidator(比较验证)的使用
  7. 学习Linux的决心书
  8. 顶顶顶!! Xcode7.1下用CocoaPods安装Alamofire--swift下的第三方网络库
  9. 蓝桥杯 振兴中华——2013年省赛C/C++ A组真题3
  10. 广东中学计算机课可教什么,广东实验中学课程设置如何?有什么特色?