首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在互联网上使用MQTT?

如何在互联网上使用MQTT?
EN

Stack Overflow用户
提问于 2015-03-09 10:58:52
回答 4查看 42.7K关注 0票数 9

目前,我正在成功地运行一个蚊虫经纪人,订阅主题,并在本地网络中与客户发布消息。

如何与位于不同IP地址的另一个本地网络通信?

我是否应该设立两个蚊虫经纪人,每个当地网络一个?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-03-09 11:20:12

另一个本地网络中的PC需要可以从Internet访问,因此如果它位于防火墙后面,则需要在路由器内设置端口转发规则。该规则需要将通信量从公共IP地址转发到代理的内部LAN私有IP地址。

请记住,MQTT使用端口1883和8883 (用于SSL)。

票数 8
EN

Stack Overflow用户

发布于 2015-12-23 12:14:56

因为mqtt使用tcp连接,所以也有一种安全的方法可以这样做:

防火墙后面的私人经纪人。另一个防火墙后面的私人代理B。C云经纪人C在互联网上。

在两个方向设置桥A到C。这必须在A上配置,到因特网的安全tcp链接将由A创建。

在两个方向设置B到C桥。这必须在B上配置。连接到互联网的安全tcp链接将由B创建。

这将创建一个更安全的桥梁,即使您没有对路由器或防火墙的控制,也可以这样做。

票数 4
EN

Stack Overflow用户

发布于 2015-03-09 13:16:40

这都取决于您的系统需要如何工作,但您可以使用多个代理(每个网络中一个),然后创建所谓的代理之间的桥梁。

这样做的好处是,如果出现网络中断,每个网络可以继续独立于其他网络工作。

网桥还允许您控制在站点之间共享哪些消息。有关如何创建桥的详细信息,请参见mosquitto.conf手册页:

http://mosquitto.org/man/mosquitto-conf-5.html

但是正如Paolo所说,您需要在您的路由器上为端口1883/8883设置端口转发,以便将代理暴露在互联网上。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28940335

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档