当前位置:   article > 正文

网络——域内双向NAT技术

双向nat

网络——域内双向NAT技术

实验目的

企业内部有需要想要将内网的HTTP Server中WEB服务映射到公网地址10.1.12.100的80端口上,一般该需求只需要我们部署NAT Server,就可以使得其他网络内的客户端通过公网地址10.1.12.100访问内网HTTP 服务器的目的。

此时如果我们内网客户端也想要通过该公网地址去访问HTTP Server,那么会出现错误导致无法访问。将HTTP Server的私网地址直接透露出来,也不利于保障WEB服务器的安全性。

本实验通过部署域内双向NAT,使得内网地址能够通过访问10.1.12.100(即映射出的公网地址)来达成访问HTTP Server的目的。

实验拓扑

图:域内双向NAT场景

正常情况下,我们需要将内网的HTTP Server映射到外网,以便其他网络内的主机对该地址进行资源访问。首先我们部署内网的映射配置,将内网HTTP Server(192.168.1.100)映射到10.1.12.100。并登录到Clietn3,测试Client3访问10.1.12.100

1、全网配置IP地址

  1. Clietn 1 ip:192.168.1.2/24 GW 192.168.1.254(AR1的G0/0/0)
  2. Clietn 3 ip:192.168.2.2/24 GW 192.168.2.254(AR2的G0/0/0)
  3. AR1和AR2互联地址为10.1.12.1 和10.1.12.2。其余地址图内均有标识
  4. 123

2、在AR1和AR2的G0/0/1出接口上部署easy NAT,使得内网地址能够正常访问外网。

  1. AR1和AR2的配置如下,就是双方的acl per地址网段有所差异。
  2. [AR1]acl 2000
  3. [AR1-acl-basic-2000]rule per sou 192.168.1.0 0.0.0.255
  4. [AR1-acl-basic-2000]quit
  5. //匹配source 地址为192.168.1.0/24
  6. [AR1]int g0/0/1
  7. [AR1-GigabitEthernet0/0/1]nat outbound 2000
  8. //配置easy NAT,使得内网地址能够成功访问外网
  9. 123456789

3、配置基本的NAT Server,将内网服务器映射到10.1.12.100,以便处于其他网络的Clietn3能够正常访问。

  1. 在AR1的G0/0/1出接口上进行如下配置:
  2. AR1的G0/0/1出接口配置如下:
  3. [AR1]int g0/0/1
  4. [AR1-GigabitEthernet0/0/1]nat server pro tcp glo 10.1.12.100 80 inside 192.168.1.100 80
  5. // 用于将内网的Server 映射到10.1.12.100 .
  6. 123456

在经过上述部署后,Clietn3能够正常通过公网地址10.1.12.100 访问内部的HTTP Server,

内部HTTP Server的配置很简单,就是一个启用的过程,这里就直接跳过了。

此时我们验证其他域的Client3访问10.1.12.100能否正常通信。

图:Client3成功访问HTTP Server

此时Client3能够正常通过10.1.12.100访问内部的HTTP Server服务器,但我们本次实验是为了探究域内双向NAT的过程。我们查看域内Client1能否正常访问内部的HTTP Server服务器。

图:Client1无法访问HTTP Server

此时本次实验的重点来了,由于Client1访问10.1.12.100时,他会将HTTP请求给到网关(或者说是TCP连接请求)。到达网关时,网关发现目的地址是10.1.12.100(AR1的G0/0/1同网段地址),于是想要将该数据包从G0/0/1发出,不过G0/0/1接口上配置了NAT Server,发现转换后的地址是AR1的G0/0/0网段地址,那么该HTTP请求又从G0/0/0接口发回,G0/0/0接口上并没有配置NAT Server进行转换。所以此时的HTTP 请求数据包,Src ip是Client1地址,Dst 地址为10.1.12.100。但内网又没人是这个地址,于是该TCP请求被丢弃。

**备注:**可以通过抓包发现,AR1的G0/0/1出接口并无数据包,而G0/0/0的接口存在TCP无回应。

于是为了解决该一现象,我们可以在AR1的G0/0/0接口上通过配置转换,将Dst 10.1.12.100转换回服务器地址。使得Client1或域内其他客户端能够通过公网地址服务器的访问操作。

4、在AR1的G0/0/0接口上执行如下命令,完成 “域内双向NAT” 的部署。

  1. [AR1]acl 3000
  2. [AR1-acl-adv-3000]rule per tcp des 10.1.12.100 0
  3. [AR1-acl-adv-3000]quit
  4. //配置ACL 3000,匹配目标地址为10.1.12.100的数据。
  5. [AR1]int g0/0/0
  6. [AR1-GigabitEthernet0/0/0]nat server pro tcp glo 10.1.12.100 80 inside 192.168.1.100 80
  7. [AR1-GigabitEthernet0/0/0]nat outbound 3000
  8. [AR1-GigabitEthernet0/0/0]
  9. //在G0/0/0接口上也部署一个NAT Server转换。使得内网的HTTP请求数据包的目的地址能够转换成192.168.1.100
  10. 1234567891011

我们再次在Client1上面测试访问,看看能否成功通信!

)

图:Client1成功访问HTTP Server

成功完成通信!至此,域内双向NAT成功。

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号