在不同的机器上运行客户端和服务器
我有client.js
和server.js
已经被设置和完美的工作。 现在唯一的问题是,我需要在一台机器上运行客户机,在另一台机器上运行服务器。
但是,通过使用以太网电缆连接,只能运行server.js
。 即使两端都能ping通对方的IP地址,客户端也无法连接。
任何解决scheme,我可以看看? 非常感激!
请注意,这将在虚拟盒ubuntu上运行。 例如,PC 1将在virtualbox ubuntu上运行server.js
,PC 2将在虚拟机ubuntu上运行client.js
。 但是,在运行server.js
, client.js
不会启动/加载。
当你在同一台机器上运行客户端和服务器,那么你可以使用localhost
主机名或IP地址127.0.0.1通过一个叫做回送接口的东西进行连接,这个接口基本上是一个虚拟网卡,它把所有的东西路由回自己。
当这些设备位于不同的机器上时,您需要使用真实的IP或主机名,以便您需要更新代码或configuration以访问正确的IP或端口。
此外,端口可以被防火墙阻止来自外部连接,这很less用于localhost
。 您还需要确保您的端口不被阻塞。
当然,对于一个不包括以下内容的问题,只能给出一个非常一般的答案:
- 错误信息
- 使用的IP地址和端口
- 使用的协议
- 源代码
一般的build议是:
- 检查你的IP地址
- 检查你的防火墙
Ping使用一个ICMP协议,所以可以与pingbuild立连接,但是不能与我使用的TCP连接(但是你没有指定)。 当然,你永远不知道你在哪一台机器上,只有你有一个答案,所以理论上你可能正在试探自己。 你需要得到正确的IP。
要知道您的服务器上的IP地址,请参阅以下答案:
- 寻找外部IP地址
- 查找内部IP地址