我想桥接本地mosquitto代理和远程cloudmqtt代理。我想建立一个连接两个代理的桥梁,这样订阅或发布到一个代理的所有主题的所有消息都可以被另一个代理看到,因此两个代理都可以订阅和发布相同的主题,所以我配置了mosquitto.conf文件就像这样:
#Place your local configuration in /etc/mosquitto/conf.d/
#
#A full description of the configuration file is at
#/usr/share/doc/mosquitto/examples/mosquitto.conf.example
connection cloudmqtt
address mnumber.cloudmqtt.com:port
topic # both 0
notifications false
start_type automatic
remote_usename username_of_the_user_on_cloudmqtt
remote_password password_of the_user_on_cloudmqtt
pid_file /var/run/mosquitto.pid
persistance true
persistance_location /var/lib/mosquitto/
当我在终端中使用mosquitto_sub
和mosquitto_pub
时,本地代理工作正常,但消息不会发送到cloudmqtt.com代理。当我在终端中使用这些命令时:
mosquitto_sub -h mnumber.cloudmqtt.com -p port -u remote_username -P remote_password -t topic
mosquitto_pub -h mnumber.cloudmqtt.com -p port -u remote_username -P remote_password -t topic -m message
消息来到cloudmqtt,但没有任何内容发送到我编写mosquitto_sub - topic
的终端。所以我可以说两个经纪人工作正常,但他们之间没有桥梁,这可能有什么问题呢?
编辑:sudo /etc/init.d/mosquitto stop
之后我得到:
[ok]停止网络守护程序:: mosquitto
mosquitto现已停止,当我尝试使用本地客户端时,我得到:
错误:拒绝连接
然后用mosquitto
启动mosquitto之后我得到this log,其中我有这个
警告:协议不支持的地址族
是不允许桥接的问题?
@hardillb发音是什么意思?
编辑2: 我查看了log file(目的地/var/log/mosquitto/mosquitto.log),我看到有一行说:
mosquitto version 1.3.5 (build date 2014-10-18 21:06:44+0100) start$
Config loaded from /etc/mosquitto/mosquitto.conf.
.
.
.
Socket error on client mosqsub/3739-raspberryp, disconnecting.
.
.
.
当我在终端尝试mosquitto --version
时,我得到:
未知选项mosquitto --version mosquitto版本1.4.5(构建日期 太阳,2015年11月8日21:43:12 +0000)
所以我尝试了sudo apt-get install mosquitto
,我得到了:
阅读包列表...完成构建依赖树读取状态 信息...完成mosquitto已经是最新版本。 0升级,0新安装,0删除,5未升级0
如何有两个版本的mosquitto(日志文件中的1.3.5和我尝试mosquitto时的1.4.5 - 版本),当我尝试升级时我不能,这可能会导致问题?
EDIT3:已经安装了raspibian jessie和mosquitto,但问题是没有桥接。我是否需要设置一些端口转发,因为本地mosquitto使用端口1883,而cloudmqtt使用其他端口?