NAT技术是软考网络工程师的案例题考点之一,也是日常网络设备的高频配置,NAT分类如下图所示。

其中双向NAT的应用场景比较特殊,原理也比较复杂,本文从软考网工真题---原理解析---配置逐步介绍双向NAT。
2023年5月网络工程师考题
某企业网络拓扑如下图所示,该企业通过两个不同的运营商(ISP1和ISP2)接入Internet,内网用户通过NAT访问Internet,公网用户可通过不同的ISP访问企业内部的应用。
企业网络在运行了一段时间后,网络管理员发现了一个现象:互联网用户通过公网地址可以正常访问Server,内网用户也可以通过内网地址正常访问Server,但内网用户无法通过公网地址访问Server,经过排查,安全策略配置都正确。请分析造成该现象的原因并提供解决方案。

【参考答案】
原因:缺少域内nat,当内网终端访问服务器映射的公网IP地址时,防火墙会将目的地址转换为服务器的私网地址并转发给内部服务器,当服务器在回包时发现对端都在内网,将报文直接通过交换机转发给终端,当终端收到此响应报文时发现并不是自己所访问的服务器(公网地址)的响应报文,会将报文丢弃,从而导致不通。
解决方案:为主机加域内NAT。
【解析】
典型双向NAT问题,在华为设备中叫域内NAT,故障现象访问流程如下图所示。

添加域内NAT后的访问流程:

实验拓扑搭建:

抓包分析:
主机视角:主机(192.168.1.1)访问200.1.1.1的80端口,发起TCP三次握手,收到的三次握手SYN,ACK回复却是192.168.1.2回复的,随即发送了RST终止TCP连接。

服务器视角:发起TCP三次握手的是192.168.1.1,随后向192.168.1.1发送了TCP回复。

设备配置:
对主机192.168.1.1进行SNAT配置,重点配置是目的区域是trust
FW\] nat-policy \[FW-policy-nat\] rule name policy1 \[FW-policy-nat-rule-policy1\]source-zone trust \[FW-policy-nat-rule-policy1\]destination-zone trust \[FW-policy-nat-rule-policy1\]source-address 192.168.1.1 32 \[FW-policy-nat-rule-policy1\]action source-nat easy-ip 配置完成后抓包: 客户端视角:访问的是200.1.1.1,三次握手回复是200.1.1.1,没有问题建立连接  服务端视角:请求的是192.168.1.254,回复给192.168.1.254  防火墙会话表信息:将192.168.1.1转换为192.168.1.254,将200.1.1.1转换为192.168.1.2  总体流程: 