我的路由器是 cisco: 3800 series
WAN IP g0/0: 123.123.123.4
Internal n/w fa0/0: 192.168.0.4
webserver IP: 192.168.0.5
domainname: example.office.com (123.123.123.4)
我在外面应用了 nat g0/0 和 f0/0 上的 nat。NAT 规则是:
ip nat inside source list 1 interface g0/0 overload
ip nat inside source static tcp 192.168.0.5 80 123.123.123.4 80
ip nat inside source static tcp 192.168.0.5 443 123.123.123.4 443
在源列表 1 中,我应用了 permit any any。
问题:
通过这样做,我可以从办公网络外部访问我的网站,但是当我从办公网络内部尝试此操作时,我无法访问,思科路由器总是重定向到 SDM 页面,请告诉我我在做什么我失踪了。
再添加一点,我的网络服务器正在 SSL 连接(https)上运行。在我的路由器上,我的 dns 是 8.8.8.8,我没有使用内部 dns,我们的 LAN 网络中也有 google dns。
据我所知,Cisco IOS 路由器不支持这种方式的 NAT 发夹。从简短的谷歌搜索中,似乎有一些可能的解决方法,但它们可能需要一些额外的考虑。
如果这是因为内部客户端通过 DNS 连接到服务器而导致的问题,那么您可以通过使用拆分 DNS 来“修复”该问题,允许您根据请求是在本地网络上还是通过 Internet 使用不同的 DNS 解析。
供参考: https: //supportforums.cisco.com/discussion/12102421/nat-hairpinning
我没有尝试过,但这可以解决正在寻找的问题。
否则还有另外两个解决方案:
1.使用本地 dns 服务器来解析域,或者
2.使用公共 IP 配置反向代理服务器(这对于购买新的公共 IP 成本可能有点贵)但是他们的你不需要任何本地 dns。只需配置可以访问您的内部应用服务器的代理服务器。