d1139a7cc20e2cdc63fe7eddfc713abd.jpeg

当你进行 IoT 物联网开发过程中,终端-MQTT 服务器-业务系统-App 全链路联调时往往难以快速定位问题:终端可能未正常发出消息报文,也可能在网络传输中丢失,也可能被 MQTT 服务器限流丢弃,或者业务系统处理异常而丢失。此时,你就需要借助网络抓包工具 Wireshark 来分析终端网络通信行为,高效定位问题所在。

01

Wireshark 抓包工具

4c2d5999d597aa2aa7533a4ad99a3c02.png

Wireshark 是使用最广泛的一款开源抓包软件,提供直观的图形界面,并支持多种协议的解析,如 Ethernet、TCP、UDP、HTTP、MQTT等协议,常用来检测网络问题、攻击溯源、或者分析底层通信机制。

Wireshark使用 WinPCAP 作为接口,直接与网卡进行数据报文交换,用于捕获和分析计算机网络中传输的数据包,帮助用户深入了解网络通信和故障排除。

02

MQTT 协议抓包分析

你只需要配置如下过滤规则即可抓取终端设备 MQTT 网络通信报文

tcp and port 1883

02940b4c3ebb539b12026adc87dc4755.png

传输层TCP协议的几个标识

2c1841f80f0abf49d6f8ad7a7acf7251.png

为了方便查看,你可以把终端设备IP标记成了 device,MQTT 服务端的 IP 保持不变。

更多推荐