新的wireshark可以直接支持MQTT协议不需要安装插件。
![](https://i-blog.csdnimg.cn/blog_migrate/15ce71492ffe2b0823d5d4f77cbce3a8.png)
但是wireshark显示的emq服务器是MQTT协议,自研服务器显示的是TCP协议,一直理解不了为什么识别出来不一样。抓包对比了emq服务器和自研服务器的报文,甚至把用户名和密码改成一致了,报文没有区别,就是不识别自研服务器的报文。
看到别的博客说要配置端口号,默认端口号为1883。在wireshark的“编辑”-》“首选项”-》“Protocols”-》“MQTT”中设置端口。
![](https://i-blog.csdnimg.cn/blog_migrate/ac70fb4bbdb639fec4fbec1f59f34c64.png)
![](https://i-blog.csdnimg.cn/blog_migrate/62d62c236ba2e671dc7e0532202449ee.png)
端口号改为8800即可解决识别MQTT协议问题。
![](https://i-blog.csdnimg.cn/blog_migrate/f231b69c90893f4a695f39d188c9a92d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/33c9208813e562fdf14c2967a6be32a2.png)