Erlang EPMD проблема с подключением - PullRequest
1 голос
/ 18 апреля 2011

У меня три машины: A, B и C.

Я использую erl -name 'node@xx.xx.xx.xx', чтобы запустить оболочку на каждом из компьютеров, где xx.xx.xx.xx - их IP-адреса. Проблема в том, что я могу пропинговать (используя net_adm: ping / 1) от A до C и от B до C, но я не могу пропинговать от 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 имеют CentOS, установленную с Erlang R14B, а C имеет Debian, установленный с Erlang R13A. Можно ожидать проблем между A и C или B и C, но довольно странно, что связь между A и B является проблематичной.

1 Ответ

2 голосов
/ 19 апреля 2011

Я думаю, что ваш узел защищен огнем. Чтобы открыть брандмауэр, вам нужно открыть порт 4369 (для сопоставления портов Erlang) и некоторые другие порты для связи между узлами (вы можете разрешить все соединения от других ваших узлов или настроить только диапазон портов ). Однако даже лучше использовать своего рода VPN , если вы подключаете свои узлы через Интернет.

...