只能通过localhost而不是IP连接

时间:2014-04-28 00:09:46

标签: web-services localhost port

每次我托管服务器时,我只能通过localhost(127.0.0.1)而不是我的IP连接。

我的ISP是罗杰斯。好的,我们说我的IP是12.34.56.789。

现在,当我尝试托管XAMPP服务器时,我端口转发80,任何人都可以通过12.34.56.789连接到我的网站但是我。我只能通过localhost(127.0.0.1)或我的内部Ip(192.168.2.1x)连接。当我尝试连接12.34.56.789时,它会向我显示我的互联网服务页面(该站点,通常为192.168.x.xx,您可以在其中进行移植)。

另一个例子,当我托管一个Minecraft服务器时,我移植到25565,每个人通过12.34.56.789:25565连接但是如果我进入我的客户端我无法连接到12.34.56.789:25565,只有localhost:25565。

我是否需要配置或更改以便我使用外部IP连接到自己,因为像wordpress这样的东西你不能在localhost和12.34.56.789上拥有相同的网站,如果我这样做的话#39;或者只是我可以正确地查看它,或者除了我以外的所有人都能正确查看它。

1 个答案:

答案 0 :(得分:1)

您使用NAT从外部IP转发到内部IP - 当不从外部访问时,这会遇到问题。考虑一下这个数据包流:

  • 你(192.168.2.1x) - > 12.34.56.789
  • NAT将其更改为192.168.2.1x - > 192.168.2.1x
  • 请求的服务不知道12.34.56.789中间人
  • 所请求的服务答案192.168.2.1x - > 192.168.2.1x
  • 这不是192.168.2.1x的预期答案 - > 12.34.56.789
  • 所以它被默默地丢弃了

由于这是一种非常常见的情况,大多数SOHO路由器根本不对来自内部的数据包执行NAT,而是请求默认服务(例如,互联网服务页面)

更多专业路由器将允许此配置具有不可避免的警告,因为显示错误的连接IP地址。这被称为“完整NAT”,由“目的地NAT”或SNAT(SOHO路由器中所谓的“端口转发”)和“源NAT”(在SOHO路由器上仅在内部到外部使用)组成)

相关问题