在不同的机器上运行客户端和服务器

时间:2017-01-11 15:30:50

标签: node.js server client ethernet

我已经设置client.jsserver.js并且工作正常。现在只发布,我需要在一台机器上运行客户端,在另一台机器上运行服务器。

但是,通过使用 以太网 电缆连接,只能运行server.js。即使两者都能够ping对方的IP地址,客户端也无法连接。

我可以研究哪种解决方案?非常感谢!

请注意,这将在虚拟机ubuntu上运行。例如,PC 1将在virtualbox ubuntu上运行server.js,PC 2将在虚拟机ubuntu上运行client.js。但是,在运行server.js后,client.js无法启动/加载。

1 个答案:

答案 0 :(得分:1)

当您在同一台计算机上运行客户端和服务器时,您可以使用localhost主机名或IP为127.0.0.1通过称为环回接口的东西进行连接,该接口基本上是一个虚拟网卡,可将所有内容路由回来对自己。

当这些机器在不同的机器上时,您需要使用真实的IP或主机名,因此您需要更新代码或配置以访问正确的IP或端口。

此外,防火墙可以通过外部连接阻止该端口,这对于localhost很少进行。您还需要确保您的端口未被阻止。

当然,只有一个非常一般性的答案可以给出一个不包括的问题:

  • 错误消息
  • 使用的IP地址和端口
  • 使用的协议
  • 源代码

一般建议是:

  1. 检查您的IP
  2. 检查防火墙
  3. Ping使用ICMP协议,因此可以与ping建立连接但不能与TCP连接(我假设您正在使用)(但同样,您没有指定)。当然,你永远无法确定你正在使用哪台机器,只是你得到了答案,所以理论上你可能正在自己打电话。你需要获得正确的IP。

    要知道服务器上的IP地址,请查看以下答案: