mqtt

需要一些帮助来设置 Mosquitto 的 IoT 核心
mqtt

需要一些帮助来设置 Mosquitto 的 IoT 核心

我一直在尝试设置一个 mosquitto 服务器,以便将有关我的 IoT 设备的数据发布到 IoT 核心服务。然后 Alexa 会获取这些数据,这样有人就可以问“我的电池电压是多少?”,Alexa 就会正确回答。 无论如何,我遵循了以下指南: 教程 由于我在 RPI 上托管 Mostquitto(我已更新到最新版本的 mosquitto),我跳过了有关 EC2 服务器的部分。一切都能够顺利安装,没有任何问题。当我进入测试设置的步骤时,这就是发生“错误”的地方。 根据指南,在 IoT 核心上的 MQTT 测试客户端中,我订阅了 localgateway_to_...

Admin

如何在不同的 Docker 容器中运行 MQTT-Broker 和 -Clients?
mqtt

如何在不同的 Docker 容器中运行 MQTT-Broker 和 -Clients?

我需要在 Docker 容器中运行一个 MQTT 代理,然后在另外两个 Docker 容器中运行两个客户端(一个发送方和一个接收方)。代理设置为监听端口 1883,因此我的理解是,所有三个容器都需要映射主机端口 1883 才能发送和接收消息。 不幸的是,这不起作用,因为每个主机端口只能映射一次。有办法解决这个问题吗?还是我做错了? 我用蚊子作为代理。发送方是 NodeRED 流,接收方是我自己编写的 .Net 应用程序。我在 Linux 主机上使用 Linux 容器。 ...

Admin

为什么我发送数据包后会立即收到“TCP 重传”消息?
mqtt

为什么我发送数据包后会立即收到“TCP 重传”消息?

我有一个程序(用 Python 编写),用于将信息发布到总线(MQTT,由 实现mosquitto)。这是一种“即发即弃”类型的消息,即没有长期订阅,只是发送一条消息。 所有这些都有效,但我(偶然)注意到 TCP 流量很奇怪: 192.168.10.2是一台服务器,上面172.19.0.20有一个装有 MQTT 服务器的 docker 容器。命令是tcpdump -i any port 1883 -w mqtt.pcap。这两行是每次传输(每次发布到 MQTT 总线)的唯一命令。 为什么会这样TCP Retransmission?(总体来说一切正常,我只是...

Admin

Relation TCP acks and MQTT acks
mqtt

Relation TCP acks and MQTT acks

Is it somehow possible for a MQTT client to receive an MQTT PUBACK message without having received the TCP ack? for example: The client publishes a message with QoS 1. The broker receives this message and returns the PUBACK. Afterwards, the server's TCP stack also sends out the TCP...

Admin

docker-compose 出现“volumes 'type' 是必需属性”错误
mqtt

docker-compose 出现“volumes 'type' 是必需属性”错误

我刚刚开始学习docker的工作原理,在使用docker-compose时遇到了yaml文件的问题。 version: '3.7' services: portainer: container_name: portainer image: portainer/portainer volumes: - portainer_data:/data - /var/run/docker.sock:/var/run/docker.sock restart: always ports: - "...

Admin

Ubuntu systemctl 服务失败:主进程已退出,代码=已退出,状态=1/FAILURE
mqtt

Ubuntu systemctl 服务失败:主进程已退出,代码=已退出,状态=1/FAILURE

我正在编写一个 python 脚本,将一些 MQTT 主题订阅到本地主机 MQTT 代理,当推送消息时,该脚本将调用同一目录中另一个脚本中的函数将更改加载到 SQL 数据库中。 在终端手动运行时,该脚本运行良好: python3 /directory/path/to/file/listen_mqtt.py 但是,我试图让此文件在 Ubuntu 系统启动时自动执行。我在以下位置创建了一个新服务: /lib/systemd/system/listen_mqtt_py.service 服务描述如下: [Unit] Description=Listen Mqtt A...

Admin

在 Windows 上进行端口转发 mosquitto
mqtt

在 Windows 上进行端口转发 mosquitto

我使用本教程的第一部分在我的笔记本电脑(装有 Windows 10)上设置了一个 mosquitto 代理。我订阅了一个主题,并成功地在本地主机上发布/接收了一条消息,如本教程中所述。我的下一个目标是在我的本地计算机上运行 mosquitto 服务器,订阅一个主题,然后使用不同网络上的另一台计算机(通过互联网)发布到该主题,并在本地计算机上接收该消息。 在互联网上搜索后,我发现端口转发正是我所寻找的。下图显示了我的路由器端口转发设置页面 图片链接在这里 在第 1 部分中,我相信我必须输入运行 mosquitto 代理的笔记本电脑的本地 IP 地址(对吗...

Admin

如何为安全 MQTT 生成可信的 SSL 证书?
mqtt

如何为安全 MQTT 生成可信的 SSL 证书?

我是信息安全领域的新手,有关 SSL 的一切都超出了我的理解范围。 目前,我正在尝试让 IoT 设备 (ESP32) 连接到 MQTT 代理,broker.losant.com:8883在我的例子中是通过 TLS。该设备已刷入Mongoose 操作系统依赖于mbedTLS库来保护 MQTT。 我遇到的问题是,当我使用自签名证书时,mbedTL 显示“该证书未由受信任的 CA 正确签名”。我可以在哪里获得这个可信证书或者我应该如何生成它?我已经在互联网上搜索了很长时间,但遗憾的是,Mongoose-OS 文档中没有任何内容。 请告诉我需要遵循的步...

Admin

无法打开端口 1883
mqtt

无法打开端口 1883

我正在尝试使用具有无线连接的笔记本电脑连接到 MQTT Mosquitto 服务器。但是,我总是收到超时消息。经过一番研究,我认为这个问题与关闭端口 1883(未加密的 MQTT 通信)有关。我还找到了一个网站来测试与使用 HiveMQ 的 MQTT 代理的连接性(http://www.hivemq.com/demos/websocket-client/) 每当我输入用户和密码时,它就会在其他设备中运行。 因此,我在 Windows Defender 防火墙中打开了入站规则,如https://www.youtube.com/watch?v=xMGPyZtd...

Admin

如何正确安装 mosquitto(mqtt 代理)以及如何设置 MQTT node-red?
mqtt

如何正确安装 mosquitto(mqtt 代理)以及如何设置 MQTT node-red?

我一直在摆弄 node-red 和一些 arduino 的东西,但现在我正尝试连接到我的 arduino 以使用它来接收和发送数据内容。 但是我在我的计算机上安装 mosquitto 时没有成功,我尝试了在互联网上找到的多种不同的解决方案,但都没有帮助我。 大多数人说只有 x86 版本可以工作,但事实并非如此。 有人可以指导我如何在 Windows 10 x64 上正确安装最新的 mosquitto 版本以及如何将其连接到 node-red 上的 MQTT 服务吗? 谢谢! ...

Admin

Mosquitto MQTT 连接套接字错误(从 PLC 连接)
mqtt

Mosquitto MQTT 连接套接字错误(从 PLC 连接)

我习惯通过 8883 端口(安全)将 PLC 与 VPS 云上的 mosquitto 代理连接。但这次,功能块总是抛出 80E4 错误(未找到有效的 CA)。我已检查从 PLC 连接到 MQTT 的所有条件,它们都是正确的。 我不认为问题出在代理或 TLS 版本上,因为我可以通过其他使用 tls v1.1 和 v1.2 的应用程序连接到它,当我尝试使用 TLS v1.0 连接(暂时禁用 TLS v1.0 进行测试)(通过 mqttfx 或 C# 应用程序)时,代理显示错误“不支持协议”。但是当我从 PLC 连接时,代理只显示错误: “来自端口 8883 ...

Admin

Debian 9 服务器上的 Node-RED 无法连接到 MQTT 代理
mqtt

Debian 9 服务器上的 Node-RED 无法连接到 MQTT 代理

我的 Node-RED 流程: [{"id":"6c5780e.7e86f","type":"mqtt in","z":"fa8ef0ce.69a348","name":"","topic":"bs/esp8266/ldr","qos":"2","datatype":"auto","broker":"11952de3.32d7b2","x":320,"y":420,"wires":[["e5ac261a.a24058"]]},{"id":"11952de3.32d7b2","type":"mqtt-broker","z":"","name":"","bro...

Admin

Mosquitto 代理套接字错误
mqtt

Mosquitto 代理套接字错误

从 1.4.x 更新到 mosquitto v1.5.5 后,我无法连接到代理,我尝试使用 esp 模块以及 raspberry pi 和 mosquitto_sub。但是,当我从运行代理的计算机运行 mosquitto_sub 时,它成功连接。我还尝试使用来自本地主机的 python 脚本进行连接,并且成功了。我认为这与 v1.5 上的更新身份验证有关,但是我的配置文件仅包含一行,应该可以处理这个问题,因为我添加了“allow_anonymous true”。 有人有什么想法吗?我得到的输出是:客户端 XXX 套接字错误,正在断开连接。 此外,当我在 ...

Admin

MQTT 消息之间延迟较大
mqtt

MQTT 消息之间延迟较大

我有一个测试配置,它由一个带有 mqtt 服务器的 raspberry pi 3 b+、一个带有一些 led 的 esp32 和一个用于切换它们的网页组成(网页和 esp32 是客户端)。对于 esp32,我正在使用 PubSubClient 进行通信。基本上,当我切换 led 时,我发布 esp32 订阅的“in1”主题,读取其有效负载(“开”或“关”),然后根据输出状态向浏览器发布消息以进行确认。请记住,这一切都发生在本地网络中。经过一些测试,我发现浏览器发布一条消息最多需要 10 毫秒。但是,从第一条发布消息到确认消息(esp32 发送报告输出状态的消...

Admin