我有三台机器:A,B和C.
我使用erl -name'node@xx.xx.xx.xx'在每台机器上启动一个shell,其中xx.xx.xx.xx是它们的IP。问题是我可以ping(使用net_adm:ping / 1)从A到C和B到C,但是我不能ping到A到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 ping?
BTW:A和B安装了CentOS,安装了Erlang R14B,C安装了Debian和Erlang R13A。人们可能会想到A和C或B和C之间的问题,但很奇怪A和B之间的联系是有问题的。答案 0 :(得分:2)
我认为你的节点是防火墙的。要打开防火墙,您需要打开端口4369(用于Erlang端口映射器)和一些其他端口用于节点之间的通信(您可以允许来自其他节点的所有连接或setup only a range of ports)。但是,如果您通过Internet连接节点,则使用某种VPN会更好。