gpt4 book ai didi

linux - 客户端 上的 MQTT 套接字错误

转载 作者:IT王子 更新时间:2023-10-29 00:07:36 29 4
gpt4 key购买 nike

我在 Raspberry Pi 上设置了 MQTT 并为代理配置了 Arduino Uno,但我在/var/log/mosquitto/mosquitto.log 文件中看到以下条目:

New connection from 192.168.10.114 on port 1883.
Socket error on client <unknown>, disconnecting.

Pi 的 ETH0 连接到我的本地 LAN,IP 地址为 192.168.1.50

Pi 上还有一个 WiFi AP 设置。 Arduino Uno 通过 WiFi 连接以发送/接收 MQTT 消息。 WiFi AP 的 IP 地址为 192.168.10.1,并通过 dnsmasq 提供 DHCP 租约。

我已经尝试在本地 MQTT 代理服务器(Pi)上发布和订阅测试并得到相同的错误:

Command:
mosquitto_sub -h 192.168.10.1 -t topic

mosquitto.log:
New connection from 192.168.10.1 on port 1883.
New client connected from 192.168.10.1 as mosqsub/1837-raspberryp (cl, k60).
Socket error on client <unknown>, disconnecting.

这是/etc/mosquitto/mosquitto.conf:

pid_file /var/run/mosquitto.pid

persistence true
log_dest file /var/log/mosquitto/mosquitto.log

allow_anonymous true

include_dir /etc/mosquitto/conf.d

sudo service mosquitto 停止须藤服务蚊子启动:

mosquitto version 1.4.8 terminating
mosquitto version 1.4.8 (build date Sun, 14 Feb 2016 15:06:55 +0000) starting
Config loaded from /etc/mosquitto/mosquitto.conf.
Opening ipv4 listen socket on port 1883.
Opening ipv6 listen socket on port 1883.

我的接口(interface)配置可能有问题。这是/etc/network/interfaces:

source-directory /etc/network/interfaces.d

auto lo
iface lo inet loopback

iface eth0 inet manual

auto wlan0
allow-hotplug wlan0
iface wlan0 inet static
address 192.168.10.1
netmask 255.255.255.0

谁能指出 MQTT 上套接字错误的来源?

最佳答案

我来到这个线程是因为我遇到了同样的错误。经过更多故障排除后,它与身份验证配置有关 - 客户端 (Arduino) 尝试匿名连接(没有密码),而代理 (Pi) 设置为仅允许经过身份验证的连接(MQTT 配置中的 allow_anonymous false ).

在 Arduino 连接代码中添加正确的密码为我解决了这个问题。

关于linux - 客户端 <unknown> 上的 MQTT 套接字错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35704632/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com