erlang epmd连接问题

erlang epmd连接问题,erlang,ping,Erlang,Ping,我有三台机器:A、B和C 我使用erl-name'node@xx.xx.xx.xx'在每台机器上启动外壳,其中xx.xx.xx.xx是它们的IP。问题是我可以从A ping到C和B ping到C(使用net_adm:ping/1),但我不能从A ping到B =ERROR REPORT==== 18-Apr-2011::18:28:34 === global: 'x@ip.of.a' failed to connect to 'x@ip.of.b' 所有IP都是全局IP,A和B位于同一位置,共

我有三台机器:A、B和C

我使用erl-name'node@xx.xx.xx.xx'在每台机器上启动外壳,其中xx.xx.xx.xx是它们的IP。问题是我可以从A ping到C和B ping到C(使用net_adm:ping/1),但我不能从A ping到B

=ERROR REPORT==== 18-Apr-2011::18:28:34 ===
global: 'x@ip.of.a' failed to connect to 'x@ip.of.b'
所有IP都是全局IP,A和B位于同一位置,共享前三段IP地址的相同值。为什么我不能从A跳到B


顺便说一句:A和B安装了CentOS和Erlang R14B,C安装了Debian和Erlang R13A。人们可能会认为A和C或B和C之间存在问题,但奇怪的是,A和B之间的连接是有问题的。

我认为您的节点是防火墙连接的。要打开防火墙,您需要打开端口4369(对于Erlang端口映射器)和一些其他端口,用于节点之间的通信(您可以允许来自其他节点或服务器的所有连接)。不过,如果您通过Internet连接节点,则最好使用某种类型的防火墙。

我以为这是防火墙,但实际上我可以使用nc连接到tcp端口4399,当我调用net_adm:ping/1时,我可以使用tcpdump看到数据包在两侧通过端口4399流动