使用tcpdump搜索许多pcap文件

时间:2016-08-03 19:52:32

标签: pcap tcpdump

我有一堆用tcpdump获得的pcap文件。我需要搜索所有特定关键字并记录哪些文件包含这些字符串。有没有办法使用tcpdump命令自动搜索这些关键字?

2 个答案:

答案 0 :(得分:2)

使用tshark的最通用解决方案可能是运行类似:

tshark -r file.pcap -Y "frame contains foo"

...其中foo是您要搜索的字符串。有关使用contains和其他运算符(例如支持Perl兼容正则表达式的matches运算符)进行过滤的详细信息,请参阅wireshark-filter man page

使用该命令,您将看到的输出将是与过滤器匹配的每个数据包的1行摘要。您可以使用多种方法定制输出,但是,例如,假设您只想知道匹配数据包的帧编号,您可以运行:

tshark -r file.pcap -Y "frame contains foo" -T fields -e frame.number

有关-T-e选项的更多信息,以及可能对您有用的其他选项,请参阅tshark man page

答案 1 :(得分:1)

还有更强大的tcpdump版本,tshark(它是来自wireshark包的命令行工具)。您可以使用tshark -T字段| pdml | ps | psml | text以您喜欢的格式转储数据包,只需grep它。 tshark可以读取tcpdump转储。