读取和写入数据包到pcap文件

时间:2013-07-02 08:48:33

标签: wireshark pcap

我使用wireshark捕获数据包并将其保存在pcap文件中。 现在我想从文件中读取这个数据包并多次写入另一个文件。 我该怎么办?

2 个答案:

答案 0 :(得分:0)

你的问题不够明确。

  • 如果您只想获取文件并将其附加到自身(您可以在file-> merge中选择wireshark的 merge 选项 - 读取更多here) 但是如果没有编辑它,你会得到很多重复的ack和其他“奇怪的东西” - 因为序列号将保持不变(如果你只是复制当然)。

  • 如果您想进行整个编辑过程,您应该考虑使用pcap编辑工具,例如: bittwist,libcrafter,editcap(假设您在wireshark安装文件夹中)或者powereditpcap (当然你可以找到其他人:))。

希望能给你一些指导。

答案 1 :(得分:0)

要打开pcap文件,您可以使用:

pcap_t *pcap, *handle;
char errbuf [PCAP_ERRBUF_SIZE];
pcap = pcap_open_offline(argv[1],errbuf);

如果pcap!= NULL,那么您已成功打开pcap文件。现在,您可以循环浏览文件,直到到达文件末尾。

struct pcap_pkthdr header;
const unsigned char *packet;
for (i = 0; (packet = pcap_next(pcap, &header)) != NULL; i++) {
   <do what you want to do with the packet using the packet pointer>
}
相关问题