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

我有client.jsserver.js已经被设置和完美的工作。 现在唯一的问题是,我需要在一台机器上运行客户机,在另一台机器上运行服务器。

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

任何解决scheme,我可以看看? 非常感激!

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

当你在同一台机器上运行客户端和服务器,那么你可以使用localhost主机名或IP地址127.0.0.1通过一个叫做回送接口的东西进行连接,这个接口基本上是一个虚拟网卡,它把所有的东西路由回自己。

当这些设备位于不同的机器上时,您需要使用真实的IP或主机名,以便您需要更新代码或configuration以访问正确的IP或端口。

此外,端口可以被防火墙阻止来自外部连接,这很less用于localhost 。 您还需要确保您的端口不被阻塞。

当然,对于一个不包括以下内容的问题,只能给出一个非常一般的答案:

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

一般的build议是:

  1. 检查你的IP地址
  2. 检查你的防火墙

Ping使用一个ICMP协议,所以可以与pingbuild立连接,但是不能与我使用的TCP连接(但是你没有指定)。 当然,你永远不知道你在哪一台机器上,只有你有一个答案,所以理论上你可能正在试探自己。 你需要得到正确的IP。

要知道您的服务器上的IP地址,请参阅以下答案:

  • 寻找外部IP地址
  • 查找内部IP地址