CISCO ASA5504 防火墙如何设置内网访问自己的外网IP

环境说明:公司里面有一台 ASA5504防火墙,外网IP地址 72.71.13.34, 内网IP为 192.168.10.100(这是一台服务器),防火墙上已经做了80端口映射。

问题描述:在我家里面用浏览器访问72.71.13.34没问题。公司内网访问192.168.10.100服务器的WEB也没问题,但是公司内网任何一台电脑192.168.10.0/24 的网段都无法通过 72.71.13.34 访问该服务器WEB,请问是怎么回事,要怎么设置才可以让公司内网电脑访问自己的外网IP?

典型的nat回流问题,例如:


拓扑如上所示:内网web服务器server内网地址:192.168.1.254 在出口路由上即RT-NAT上做了地址映射为172.16.0.3 ,现在ISP上有个loopback0模拟外网用户,访问web服务器正常(本文用端口23模拟),如下:
内网用户用内部地址直接访问,没问题:

内网用户用服务器映射后的公网地址访问,不通:


查看防火墙链接如下:flag为saA,即内网pc给服务器发送了sys但没有收到对端的syn+ack报文。

由此可看出是TCP三次握手出现了问题,接下来我们PC的F0/0上抓包,结果如下:

可以看出第一次是pc(192.168.1.2)给服务器(映射后公网地址为172.16.0.3)发了syn,之后,数据包穿越防火墙到达外网RT,外网RT收到报文后转发给了内网192.168.1.254的web服务器真是地址,web服务器查看原地址为同一网段,目的可达,因此直接将数据包转发给PC终端,即抓包显示的第二条,s:192.168.1.154 d:192.168.1.2 报文syn+ack。这就证实了防火墙的链接为什么是saA了,随后pc给web服务器发送了rst报文,即第三行。因为,在pc看来,它并没有给192.168.1.254发送syn报文,所以它重置了会话报文。下面几行就是TCP重传机制了。

至此问题清楚了。

解决方案列举两种:1、如果内网有自己的DNS服务器,直接在DNS服务器上做指针,例如:www.a.com 指向192.168.1.254内网真是地址即可。如果内网没有DNS服务器可直接访问IP或者更改写个脚本在AD环境中分发并执行host批处理。但改host对于移动办公的终端比较麻烦,在公司办公时可以用host直接访问,但出了公司就无法解析了,需要把host改回来,用公网DNS解析访问公网。推荐在内部搭建DNS服务器。

2、在墙上做策略NAT。在此不在赘述。

详细的可以去我博客:网页链接

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-02-09
1.在公网与内网对外映射后加上DNS
static (dmz,outside) 72.71.13.34 192.168.10.100 netmask 255.255.255.255 dns
2.通过ACL开通对面只允许指定的端口访问,提高安全性
access-list 101extended permit tcp any host 72.71.13.34 eq web本回答被提问者和网友采纳
第2个回答  2018-02-09
这个是数据回流问题。除了做80口映射,还要做dns map,路由器支持的话ip host也加上
第3个回答  2019-01-14
感觉很奇怪,按理说应该可以,Untrustt Untrust 的策略做了没
第4个回答  2019-01-14
4.北师程甲本
相似回答