问题很简单:如果我在 TCP/IP 设置中将 Web 服务器的 IP 地址设置为我的台式机的默认网关,那么我无法在我的 PC 上打开我们 Web 服务器上的任何本地托管站点。我也可以打开互联网上的任何其他站点。如果我使用真实 IP 地址,那么我也可以打开我们的网站。
以前的 Web 服务器是 Windows Server 2003 Webserver Edition,没有出现过这样的问题。较新的是 Windows Server 2008 R2 Standart Edition。
所有线索现已列出。如果您需要任何信息或有想法,我会根据要求提供更多信息。
补充和修正一点:
如果我的 IP 是本地的,我就无法打开任何网站。例如:webserver 192.168.35.211 mydesktop 192.168.35.45
- 我可以 telnet mysite.com80但我的请求没有得到任何回复。
- 我可以 telnet mysite.com二十五并且有回应。
- 从家里到 Web 服务器的 VPN 连接使网站对我来说处于“离线”状态。我仍然可以通过 Web 服务器打开 supersuser.com
所以我认为存在与 IIS 相关的问题,而不是网络问题。
答案1
我认为发生的事情是这样的。如果我错了,请纠正我。
mysite.com 有公共 IP 地址
mysite.com 被防火墙转换为内部 IP 地址,即内部 RFC1918 地址(192.168.35.211)
当您在本地网络上时,您可以访问 192.168.35.211,但不能访问 mysite.com?
这是正常行为,因为执行地址转换的防火墙或设备无法通过它来发夹流量,所以您的数据包出去了,但永远不会再回来。
解决此问题的正常方法是使用水平分割 DNS 区域。mysite.com 内部的 IE 解析为 192.168.35.211,外部解析为您的公共 IP。或者您使用内部名称(http://mysite.local/或类似的东西..)
VPN 上也会发生同样的事情,因为您无法访问公共资源,因为默认网关可能已在 VPN 连接上设置。更改该网关取决于您的网络管理员(或者,如果您有控制权,您可以取消选中在远程网络上使用默认网关,并手动设置到您的办公室网络的路由)。
但是如果我上述的假设是正确的,那么您的问题就是网络相关的,而不是 IIS 相关的。