我想在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"
答案 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中的过滤不起作用。