我应该使用哪些选项tcpdump
来让它只执行数据包的十六进制转储而不尝试解释其内容?运行它作为tcpdump -e -v -x
或类似的尝试来解释层,但我不想要它。
我想要什么tshark
:
% sudo tshark -xxx -i eth0
...
答案1
我能找到的最接近的两个解决方案是这些
后处理以删除解码。
tcpdump -nXX -i eth0 | sed $'s/^[^ \t].*//'
这并不完美,因为格式有点不同。
tshark 0000 52 54 00 12 35 02 08 00 27 0f db b3 08 00 45 00 RT..5...'.....E. 0010 00 54 2a 4d 40 00 40 01 e9 43 0a 00 02 0f 0a 0f .T*M@[email protected]...... 0020 10 fb 08 00 ab 06 1e b5 00 01 00 3f ab 57 00 00 ...........?.W.. tcpdump 0x0000: 0008 9bbd ab8a 001d aadd cb68 0800 4500 ...........h..E. 0x0010: 0028 3ec8 4000 7e06 a075 0a0a 0510 0a0f .(>.@.~..u...... 0x0020: 046a cb6a 0016 7049 a307 5eaf 8afb 5010 .j.j..pI..^...P.
写入数据文件并用于
tshark
解释它(可能在另一台机器上)。tcpdump -w /tmp/capture.dat -i eth0 tshark -r /tmp/capture.dat -xxx
在这里,由于我们使用的
tshark
是处理捕获文件,因此输出将完全如您所愿。tshark
如果有必要,你可以做一些“讨厌的”事情,比如远程运行:ssh -zq remote_host tshark -r - -xxx < /tmp/capture.dat
答案2
AFAICTtshark -xxx
不会省略任何内容,它只是在单行解释下方添加数据包的十六进制转储。
因此,如果您想要同样的东西,那么我相信这就是您所需要的:
tcpdump-xx
编辑:或者tcpdump -XX
如果你也想要像 tshark 那样的 ASCII 转储
如果您真的不需要任何解释,只需要十六进制转储,那么:
tcpdump -w - | tcpdump -w - |十六进制转储
EDIT2:为了进一步澄清 - 并遵循 roaima 的评论 - 我上面的答案是基于我能找到的最近的 tshark,结果是版本 1.8.10 并产生此输出(我使用-r
而不只是-i
显示相同的数据包在每个示例中,我认为这并不重要):
$ tshark -r test.pcap
1 0.000000 10.55.131.166 -> 10.48.37.151 TCP 78 58311 > https [SYN] Seq=0 Win=65535 Len=0 MSS=1260 WS=32 TSval=1072006161 TSecr=0 SACK_PERM=1
$ tshark -r test.pcap -xxx
1 0.000000 10.55.131.166 -> 10.48.37.151 TCP 78 58311 > https [SYN] Seq=0 Win=65535 Len=0 MSS=1260 WS=32 TSval=1072006161 TSecr=0 SACK_PERM=1
0000 00 50 56 9e 18 78 00 07 4f 1c e8 00 08 00 45 00 .PV..x..O.....E.
0010 00 40 7b 8b 40 00 36 06 0b 89 0a 37 83 a6 0a 30 .@{[email protected]
0020 25 97 e3 c7 01 bb 77 13 bc 5e 00 00 00 00 b0 02 %.....w..^......
0030 ff ff 9d 35 00 00 02 04 04 ec 01 03 03 05 01 01 ...5............
0040 08 0a 3f e5 84 11 00 00 00 00 04 02 00 00 ..?...........
然后这是我对 tcpdump 的建议(-n
添加也禁用 DNS 查找,我最初没有注意到这种差异):
$ tcpdump -r test.pcap -XX -n
reading from file test.pcap, link-type EN10MB (Ethernet)
17:21:13.507110 IP 10.55.131.166.58311 > 10.48.37.151.https: Flags [S], seq 1997782110, win 65535, options [mss 1260,nop,wscale 5,nop,nop,TS val 1072006161 ecr 0,sackOK,eol], length 0
0x0000: 0050 569e 1878 0007 4f1c e800 0800 4500 .PV..x..O.....E.
0x0010: 0040 7b8b 4000 3606 0b89 0a37 83a6 0a30 .@{[email protected]
0x0020: 2597 e3c7 01bb 7713 bc5e 0000 0000 b002 %.....w..^......
0x0030: ffff 9d35 0000 0204 04ec 0103 0305 0101 ...5............
0x0040: 080a 3fe5 8411 0000 0000 0402 0000 ..?...........