趋势

Wireshark物联网抓包实战:MQTT与CoAP协议分析及设备通信调试

应用场景:智能家居、工业物联网设备调试中,MQTT和CoAP是最常用的协议,但报文分析需要特定技巧 [^21^] [^31^]。

一、MQTT协议抓包分析

1. 捕获过滤器设置

tcp.port == 1883    # MQTT默认端口
          tcp.port == 8883    # MQTT over TLS
          mqtt                # 显示过滤器直接筛选MQTT协议

2. 关键字段解析

消息类型Wireshark显示场景
CONNECTmqtt.msgtype == 1设备上线
PUBLISHmqtt.msgtype == 3数据发布
SUBSCRIBEmqtt.msgtype == 8主题订阅
QoS等级mqtt.qos服务质量

3. QoS消息流分析

QoS 1(至少一次):PUBLISH → PUBACK
QoS 2(恰好一次):PUBLISH → PUBREC → PUBREL → PUBCOMP

二、CoAP协议分析(UDP 5683)

CoAP基于UDP,适用于资源受限设备:

  • coap - 显示所有CoAP消息
  • coap.code == 0.01 - GET请求
  • coap.code == 2.05 - Content响应(成功)
  • coap.opt.uri_path contains "sensor" - 特定路径过滤

三、实战案例:设备掉线分析

现象:传感器设备频繁离线又重连。
抓包发现:设备发送CONNECT后,服务器返回CONNACK(返回码2: 身份验证失败),但设备仍不断重试。
根因:设备时钟不同步导致TLS证书验证失败。

免费下载 Wireshark

让网络分析触手可及

Windows 版

v4.4.0
64位 / 32位
完全免费 · 无广告

macOS 版

v4.4.0
Intel / Apple Silicon
原生支持 M 系列芯片
通过包管理器安装:sudo apt install wireshark (Debian/Ubuntu)