Erlang nodes can't see each other

戏子无情 提交于 2020-01-13 01:41:11

问题


I am new to Erlang and trying to set two nodes on my laptop.

In one terminal I type:

eli@elimayost: ~/erlang_apps> erl -sname foo -setcookie secret

And in the second terminal:

eli@elimayost: ~/erlang_apps> erl -sname bar -setcookie secret

If I use the first terminal to ping the second:

(foo@elimayost)1> net_adm:ping(bar@elimayost).

I get a pang response (same response if I use the second term to ping the first term).

Any idea why?


回答1:


Try starting the nodes like this:

eli@elimayost: ~/erlang_apps> erl -sname foo@elimayost -setcookie secret
eli@elimayost: ~/erlang_apps> erl -sname bar@elimayost -setcookie secret

Then ping them like you did before.

(foo@elimayost)1> net_adm:ping(bar@elimayost).

If that doesn't work for you, try pinging the node from itself.




回答2:


Did You check the syslog for errors?

Is apparmor active? Maybe turn it off and try again. One day I had very strange effects with apparmor running... but it is just a guess.




回答3:


it's a DNS problem, your host name 'elimayost' can't be found on the DNS. You can use 'localhost' as the host part, which like 'foo@localhost' and 'bar@localhost', it will always work.



来源:https://stackoverflow.com/questions/3483471/erlang-nodes-cant-see-each-other

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!