目前,我成功地运行了一个mosquitto代理程序,在本地网络中订阅主题并使用客户端发布消息。
如何与位于不同IP地址的另一个本地网络进行通信?
我应该设置两个mosquitto代理程序,分别用于每个本地网络吗?
目前,我成功地运行了一个mosquitto代理程序,在本地网络中订阅主题并使用客户端发布消息。
如何与位于不同IP地址的另一个本地网络进行通信?
我应该设置两个mosquitto代理程序,分别用于每个本地网络吗?
另一个本地网络的电脑需要从互联网访问,因此如果它在防火墙后面,则需要在路由器内设置端口转发规则。该规则需要将公共IP地址的流量转发到您经纪人的内部LAN私有IP地址。
请记住,MQTT使用端口1883和8883(用于SSL)。
mqtt
使用 tcp
连接,以下是一种安全的实现方式:tcp
链接。tcp
链接。http://mosquitto.org/man/mosquitto-conf-5.html
但正如Paolo所说,您需要在路由器上设置端口转发,将端口1883/8883暴露给互联网,以便使代理可被访问。
以下是允许私人空间(家庭)中的MQTT服务器公共连接的步骤:
公共端口1883应该被转发到私有端口1883 转发请求的IP地址应该是您家庭/私有网络中MQTT服务器/PC的IP地址
在#listener port-number [ip address/host name]下添加行侦听器1883 0.0.0.0 这将允许来自任何源的1883端口请求由您的MQTT处理
在尝试了许多不同的配置更改后,我成功地通过遵循以上步骤将我的MQTT服务器开放给公共/互联网流量。