【发布时间】:2020-10-04 10:24:55
【问题描述】:
我正在使用以下命令捕获 MQTT 流量以进行故障排除
tcpdump -i team0 -w mqtt-trace.pcap src 10.x.x.x
但它会在几分钟内产生非常大的文件,我可以根据主题名称过滤 tcpdump
下面是tcp有效载荷,我希望它只捕获具有PKGCTRL/1/status/frequency的有效载荷,或者如果tcpdump可以直接支持应用层协议上的过滤器,如wiresharkmqtt.topic == PKGCTRL/1/status/frequency
0000 00 13 95 36 2e ef 00 10 7e 07 87 3d 08 00 45 00 ...6....~..=..E.
0010 00 77 2e 0d 40 00 40 06 f6 78 0a 0b 80 f3 0a 0b .w..@.@..x......
0020 80 f2 c3 6a 75 83 e4 f8 f7 7a 0a 89 67 76 50 18 ...ju....z..gvP.
0030 ea 60 59 f8 00 00 30 4d 00 1a 50 4b 47 43 54 52 .`Y...0M..PKGCTR
0040 4c 2f 31 2f 73 74 61 74 75 73 2f 66 72 65 71 75 L/1/status/frequ
0050 65 6e 63 79 0a 11 09 c2 7a 85 14 d0 71 37 16 12 ency....z...q7..
0060 06 08 01 10 01 18 00 12 1c 0a 0d 09 0b 46 25 75 .............F%u
0070 02 f2 48 40 10 21 18 00 11 00 60 76 14 d0 71 37 ..H@.!....`v..q7
0080 16 20 00 28 00 . .(.
【问题讨论】:
-
你试过使用tshark命令行版本的wireshark吗?
-
使用某种 MQTT 客户端可能会更好,因为它更适合仅捕获主题和有效负载。那里有很多可供选择。我自己做了一个学习实验:github.com/john2exonets/MQTT-Packet-Monitor