将editcap的输出重定向到tcpdump

时间:2015-08-03 09:49:17

标签: redirect tcpdump editcap

我想在pcap文件中过滤前100个数据包并在stdout上显示结果。用于过滤我在命令下面使用的前100个数据包:

editcap -r test.pcap output.pcap 1-100

显示结果和过滤数据包,以便进一步使用tcpdump。

tcpdump -tttt tcp and host ip 192.168.1.1 -r inputfile.pcap

我想将editcap的输出重定向到tcpdump,如下所示:

editcap -r test.pcap - | tcpdump -tttt tcp and host ip 192.168.1.1 -r -

但是在这个命令中,我无法过滤前100个数据包。有可能吗? 如果不是可以将editcap的输出重新连接到RAM然后从RAM读取tcpdump ??

先谢谢。

顺便说一下,P.S我不想使用下面的命令,因为这个命令读取文件中的所有数据包。我需要命令读取pcap文件中的一些数据包并显示然后完成了工作。

tshark -r ~/test1.pcap  -R "frame.number<20 and frame.number>10"

1 个答案:

答案 0 :(得分:0)

  

但是在这个命令中,我无法过滤前100个数据包

即,你没有看到任何数据包?

尝试

editcap -F pcap -r test.pcap - 1-100 | tcpdump -tttt tcp and host ip 192.168.1.1 -r -

因为editcap可能正在写出一个pcap-ng文件,并且在读取pcap-ng文件时某些版本的libpcap中存在一个错误,导致tcpdump中的过滤不起作用。