多个Mosquitto代理在设备之间交换数据

时间:2018-04-05 07:12:05

标签: ip mqtt mosquitto paho

我有3台设备,每台设备都运行 Mosquitto代理。每个设备都有订阅者和发布者。

我正在使用每个设备的IP在8883打开端口并交换消息 - >订阅/发布他们的消息。如果情况恰好是设备使用动态IP。,如何向已连接的客户端发布新的IP-PORT地址?如何解决这个问题。我的方法是否正确?有没有其他方法可以为经纪人创建我自己的私人IP-PORT地址?

1 个答案:

答案 0 :(得分:0)

您的经纪人需要在已知位置可以访问,即固定的IP地址或指向其当前IP地址的DNS条目。

IP地址更改时连接的任何客户端都将断开连接,需要重新连接。

您还没有说过这些是在同一个局域网上还是在互联网上传播,但无论哪种方式,您都需要某种动态DNS解决方案。

如果设备都在同一个LAN上,那么您可以使用Avahi / mDNS / Bonjour来发现.local域中设备的当前地址。每个经纪人都需要有一个唯一的名称。

如果您处于非局域网环境中,那么您将需要使用正确的动态DNS解决方案,并让每个代理具有唯一的完全限定的DNS名称,主机可以在其IP地址更改时更新。

这两种解决方案都是比编程问题更多的网络管理解决方案,因此我建议您在SuperUser上询问是否有后续问题。

还有第三个选项,即在固定IP地址上拥有第4个代理,作为所有其他代理的中心桥梁。