1

我已经在两台计算机A和B上安装了两个rabbitmq-server。但是我无法在计算机A上启动rabbitmq-server。rabbitmq-server可以在计算机B上启动。

计算机 A 中的错误消息如下所示: *{error_logger,{{2012,11,20},{19,55,37}},"Protocol: ~p: register error: ~p~n",["inet_tcp", {{badmatch,{error,epmd_close}}*

epmd 服务器拒绝连接!!!

计算机 A 尝试将其自己的 epmd 服务器与全局 IP 地址(如 172.16.217.128)连接 计算机 B 将其自己的 epmd 服务器与本地 IP 地址连接,即 127.0.0.1

epmd 只允许本地 IP 地址的连接请求。所以计算机A拒绝连接。

顺便说一句,我做了几个测试。如果我在计算机 A 中运行“ping 127.0.0.1”命令: 20:03:59.571514 IP 172.16.217.128 > 127.0.0.1: ICMP echo request, id 9299, seq 2, length 64 20:03:59.571533 IP 127.0.0.1 > 127.0.0.1:ICMP echo 回复,id 9299,seq 2,长度 64

如果我在计算机 B 中运行“ping 127.0.0.1”命令: 19:44:03.612930 IP 127.0.0.1 > 127.0.0.1: ICMP echo request, id 1805, seq 11, length 64 19:44:03.612941 IP 127.0.0.1 > 127.0.0.1:ICMP 回显回复,id 1805,seq 11,长度 64

计算机 A ping 自己时使用源 ip 地址 172.16.217.128 !!!这就是电脑A无法启动rabbitmq-server,epmd拒绝ip地址127.0.0.1的原因

4

1 回答 1

0

Look at the output of /bin/hostname, and ensure that string appears in /etc/hosts on the "172.16.217.128" line. Then kill epmd if running, and restart rabbitmq. You should find it works normally once it can rendezvous with epmd (on port 4369).

BTW, I wouldn't quite call 172.16.217.128 a "global" IP, as it is an rfc1918 IP.

于 2017-12-23T21:43:51.743 回答