【问题标题】:Connection failing between Raspberry Pi and MacRaspberry Pi 和 Mac 之间的连接失败
【发布时间】:2016-04-01 17:06:05
【问题描述】:

我有以下

a) 安装在 Mac Yosrmite 机器上的 rabbitmq-server 和 Pika。 我有一个 rabbutmq.config /usr/local/etc/rabbitmq/rabbitmq.config 我有声明: {loopback_users, []}

b) 在树莓派上,我安装了 pika。我还安装了rabbtmq-server。

使用 pika 的 send.py 和 receive.py 在两台机器上本地工作。

从 Mac 发送到 RPi 有效;但是,从 RPi 到 Mac 的发送失败如下:

Traceback(最近一次调用最后一次): 文件“send.py”,第 5 行,在 '192.168.1.4')) init 中的文件“/usr/local/lib/python2.7/dist-packages/pika/adapters/blocking_connection.py”,第 339 行 self._process_io_for_connection_setup() _process_io_for_connection_setup 中的文件“/usr/local/lib/python2.7/dist-packages/pika/adapters/blocking_connection.py”,第 374 行 self._open_error_result.is_ready) _flush_output 中的文件“/usr/local/lib/python2.7/dist-packages/pika/adapters/blocking_connection.py”,第 395 行 引发异常。ConnectionClosed() pika.exceptions.ConnectionClosed

========================================== 我的防火墙未在 Mac 中启用。 服务器日志中没有记录错误。

send.py 代码为:

#!/usr/bin/env python
import pika

connection = pika.BlockingConnection(pika.ConnectionParameters(
               '192.168.1.4'))
channel = connection.channel()

channel.queue_declare(queue='hello')

channel.basic_publish(exchange='',
                      routing_key='hello',
                      body='Hello World!')
print(" [x] Sent 'Hello World!'")

connection.close()

============================ 我在两台机器上都得到了端口上的活动: sudo tcpdump 端口 5672

在树莓派上 15:09:05.394815 IP raspberrypi.home.40483 > ArnoldBileysMBP.home.amqp:标志 [S],seq 1428528534,win 29200,选项 [mss 1460,sackOK,TS val 1626318 ecr 0,nop,wscale 6],长度 0 15:09:05.460755 IP ArnoldBileysMBP.home.amqp > raspberrypi.home.40483:标志 [R.],seq 0,ack 1428528535,win 0,长度 0

在 Mac 上 11:09:05.547322 IP raspberrypi.home.40483 > arnoldbileysmbp.home.amqp:标志 [S],seq 1428528534,win 29200,选项 [mss 1460,sackOK,TS val 1626318 ecr 0,nop,wscale 6],长度 0 11:09:05.547362 IP arnoldbileysmbp.home.amqp > raspberrypi.home.40483:标志 [R.],seq 0,ack 1428528535,win 0,长度 0

任何帮助将不胜感激。

【问题讨论】:

  • 感谢 Gabriele,我按照建议添加了测试/测试管理员并确保启用 gui。我将连接语句更改为:credentials = pika.PlainCredentials('test', 'test') connection = pika.BlockingConnection(pika.ConnectionParameters("192.168.1.4", 5672, '/', credentials)) 我总是可以发送使用 rpi 上的服务器从 mac 到 rpi。我没有在 rpi 上通过 telnet 到 mac 进行测试。但是,我确实看到,如 tcpdump 中所示,rpi 端口上的发送和 mac 上的相应收据。如上所述,我仍然失败了。

标签: rabbitmq pika


【解决方案1】:

我在Open port 5672/tcp for access to RabbitMQ on Mac 找到了修复程序 我删除了“NODE_IP_ADDRESS=127.0.0.1 " /usr/local/etc/rabbitmq/rabbitmq-env.conf 文件中的声明。这是我对访问所做的上述修复的补充。

【讨论】:

    猜你喜欢
    • 2018-04-08
    • 2018-12-01
    • 2015-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多