我在其中一个EC2实例(ubuntu)中安装了Mosquitto MQTT,并且使用localhost运行良好的代理。
我可以在本地计算机上发布/订阅以及另一个EC2实例(同一子网172.31.X.X中的EC2)
现在,我想从外面的PC连接代理(发布/订阅)。因此,我尝试将代理IP配置为EC2实例公共IP。
VirtualBox:cat /etc/mosquitto/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
listener 1883 50.24.39.66
pid_file /var/run/mosquitto.pid
persistence true
persistence_location /var/lib/mosquitto/
log_dest file /var/log/mosquitto/mosquitto.log
include_dir /etc/mosquitto/conf.d
VirtualBox:
VirtualBox:sudo mosquitto -c /etc/mosquitto/mosquitto.conf
1495801790: mosquitto version 1.4.8 (build date Fri, 19 Feb 2016 12:03:16 +0100) starting
1495801790: Config loaded from /etc/mosquitto/mosquitto.conf.
1495801790: Opening ipv4 listen socket on port 1883.
1495801790: Error: Cannot assign requested address
carun@carun-VirtualBox:~$
但是,重启代理时遇到上述错误“无法分配请求的地址”
到目前为止,
但没有运气,
那么问题,
提前感谢您的帮助!
答案 0 :(得分:1)
从listener
行的末尾删除ip地址(50.24.39.66)(或者只删除整行)以允许mosquitto绑定到所有可用的IP地址