在使用EMQX5.0时,连接成功服务器之后,客户端会受到MQTT服务器断开连接请求

错误报告

环境

  • EMQX 版本:5.0
  • 操作系统版本:W5500,paho.mqtt.embedded-c

重现此问题的步骤

  1. 设备已上线情况下,我重启设备,设备会重新连接服务器
  2. 我的设备也能正常重新连接预先格式化的文本
  3. 但是过15s之后,EMQX MQTT服务器会主动发送断开TCP连接的请求,我客户端收到请求之后断开连接,再次重连

预期行为

服务器不应该发送断开连接请求,但是如果发送了断开连接请求,我想知道为什么?

实际行为

test3.zip (2.4 KB)


功能请求

描述你需要的功能

重连之后,服务器会主动断开连接,影响设备使用

为什么你需要这个功能


其他

日志中的 takenover ,还有相同 ip 但端口不同的连接信息,都表明有两个连接在使用同样的 ClientID 连接。这种情况下新的连接上来,就会把之前的连接踢下去。
MQTT 协议规定,每个 MQTT 连接都需要使用唯一的 ClientID

Each Client connecting to the Server has a unique ClientId. The ClientId MUST be used by Clients and by Servers to identify state that they hold relating to this MQTT Session between the Client and the Server [MQTT-3.1.3-2].

这需要你检查客户端的连接/重连机制。