应用场景:智能家居、工业物联网设备调试中,MQTT和CoAP是最常用的协议,但报文分析需要特定技巧 [^21^] [^31^]。
一、MQTT协议抓包分析
1. 捕获过滤器设置
tcp.port == 1883 # MQTT默认端口
tcp.port == 8883 # MQTT over TLS
mqtt # 显示过滤器直接筛选MQTT协议
2. 关键字段解析
| 消息类型 | Wireshark显示 | 场景 |
|---|---|---|
| CONNECT | mqtt.msgtype == 1 | 设备上线 |
| PUBLISH | mqtt.msgtype == 3 | 数据发布 |
| SUBSCRIBE | mqtt.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证书验证失败。

