我有一个http服务器向互联网提供服务,所以我在路由器中配置了端口转发。用户可以访问公司以外的服务器(URL:_http://mydomain.com:80/)。但是,如果用户在公司内部,使用上面的url访问服务器是不工作的。访问服务器的唯一方法是使用内部ip (例如:http://192.168.1.213:80/)。
网络地图图片:http://i56.tinypic.com/20i8dmr.jpg
当我告诉mydomin.com 80时,我使用wireshark捕获的tcp数据包,结果无法连接到服务器。
wireshark捕获的数据包图片:http://i51.tinypic.com/zsl8ox.png
在wireshark捕获的数据包中,No2-3显示域名解析成功.4我的计算机(192.168.1.37)使用服务器外部ip(116.232.154.50)访问服务器。7号显示端口foward是可以的,应答ip是服务器内部ip(192.168.1.213)。连接被重置(TCP标志RST)。
有人知道原因是什么吗?
发布于 2011-05-24 07:22:20
您的端口转发很可能只侦听公共接口(internet端)上的请求。根据您的路由器的品牌,您可以配置为倾听双方。
所以我们需要更多的信息,进一步帮助你。
发布于 2011-05-24 07:30:24
解决这个问题的通常方法是使用拆分dns.您需要配置DNS服务器,根据查询的来源,为服务器名称返回不同的IP地址。如何做到这一点将取决于您使用的DNS服务器,但它是一个常见的设置。
所以在你的网络内部:
servername.company.com -> 192.68.1.213
但对于外部查询:
servername.company.com -> 116.232.154.50
https://serverfault.com/questions/273113
复制相似问题