端口映射做好后,局域网无法通过公网IP访问?

不知道大家有没有遇到这种情况,就是企业级路由器或者防火墙,我们在做好端口映射以后,通过互联网能够访问映射后的服务器,说明外网端口映射是做好了的,但是在局域网里面,通过同样的公网IP和端口,却无法访问映射后的服务器。

模拟端口映射环境

如上图所示,我们通过两台三层交换机模拟公网,然后配置好路由,让电脑2可以ping通防火墙公网IP​:1.1.1.1,配置好防火墙nat和端口映射,在服务器上开启一个http服务器,在电脑2上可以通过http://1.1.1.1访问服务器,这个配置比较简单,大多数朋友都会,配置好端口映射以后,外网可以通过防火墙公网IP访问服务器上面的web服务,如下图​。

外网可以访问服务器

但是与服务器同在一个局域网的电脑1却无法通过http://1.1.1.1访问服务器,可能对于某些应用场景来说,只要外网能够通过公网IP访问服务器就行了,在局域网通过局域网IP:192.168.10.10访问服务器,但是如果服务器是通过域名访问,或者为了使用方便统一,就需要在局域网里也能够通过公网IP访问服务器​。

这就需要在防火墙上配置nat回流,配置到服务器的源地址转换,把源地址转换为网关地址或者其他局域网路由可达的地址,配置以后,就可以在局域网里通过公网IP访问服务器​了。

不同品牌设备配置nat回流的配置不一样,华为防火墙需要配置局域网区域(通常为trust区域)的源地址转换,如下图​:

华三的设备配置则比较简单,正常配置好端口映射以后,只需要在局域网接口配置nat hairpin就可以了。

[R1-GigabitEthernet0/0]nat hairpin enable

 


本文首发于微信公众号:实践技术
网络调试、技术交流联系:

张工抖音号:diff_zhang:
发布日期:
分类:调试