首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >正在连接到具有未知IP地址的服务器

正在连接到具有未知IP地址的服务器
EN

Stack Overflow用户
提问于 2017-12-21 17:39:43
回答 2查看 458关注 0票数 1

我有一个电子客户端/服务器应用程序,其中服务器通过LAN与几个客户端进行通信。这种通信是通过node-ipc建立的。

问题是,我无法控制LAN DHCP。因此,在启动时,我不知道服务器IP,更糟糕的是,客户端甚至可能在服务器启动之前就准备好了。

所以我的服务器脚本是:

代码语言:javascript
复制
const NodeIpc = require('node-ipc');
NodeIpc.config.id = 'world';
NodeIpc.config.retry = 1500;
NodeIpc.config.networkHost = FunctionToReadIP();

NodeIpc.serveNet(
    function () {
      whatever();
    });

在客户端:

代码语言:javascript
复制
const NodeIPC = require('node-ipc');
NodeIPC.config.id = ClientID;
NodeIPC.config.retry= 1500;

NodeIPC.connectToNet(
'world',
function(){
    NodeIPC.of.world.on(
        'connect',
        function(){
            NodeIPC.of.world.emit('Data.fromClient',{data: ClientID});
        }
    );
  });

只要我在一台机器上测试所有东西,它就会工作得很好,但我不能连接其他机器。我有没有办法让服务器和客户端一启动就能找到对方,而不需要知道谁拥有哪个IP?

EN

回答 2

Stack Overflow用户

发布于 2017-12-22 02:14:55

我没有使用过node-ipc,但我非常确定,对于要建立的客户端-服务器套接字连接,只有客户端需要知道服务器的地址。

对此有多种解决方案。你可以...

  • 让用户输入服务器的地址
  • 使用域确保服务器始终可用
  • 有另一台服务器始终具有相同的地址告诉客户端实际服务器当前使用的地址
  • 如果服务器在用户的本地网络内,请扫描网络以查找服务器

<代码>H110如果是小型专用项目,请使用类似C11的服务来“隧道”服务器的端口<代码>H212<代码>F213

票数 0
EN

Stack Overflow用户

发布于 2017-12-30 15:47:08

我找到了一种方法,只需使用计算机名(我有权访问)就可以与我的服务器通信。

因此,将NodeIPC.config.networkHost = 'ServerName';添加到我的客户端就起到了作用。这样,我只需要正确地设置我的服务器的名称,而不需要接触IP地址。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47922015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档