我有两台互连的电脑。在每台机器上都运行着Erlang节点,我希望通过Erlang术语(点对点的方式)相互通信。然而,其他计算机上的节点只有在我net_adm:ping他们等后才在nodes()中列出。有没有办法找出局域网上的所有节点(具有相同的cookie) (而不在每台计算机上存储邻居列表)?
发布于 2010-02-21 16:53:29
Erlang/OTP中目前还没有LAN发现系统,但是有几种方法可以解决这个问题:
inet:getif()以获取LAN子网的列表,然后为每个子网中的每个IP地址调用(net_kernel():epmd_module()):names(IP)以收集正在运行的节点的列表,然后调用net_adm:ping()将其全部连接。我认为这假设DNS解析正在工作,这样您就可以将IP转换为名称,这样ping就可以工作了。(我对节点connections)https://stackoverflow.com/questions/2304566
复制相似问题