我已经知道如何读取pcap文件并获取它拥有的数据包.Bout如何将数据包写入新的pcap文件?我需要将两个pcap文件合并为一个。
答案 0 :(得分:1)
根据我的评论,libpcap / WinPcap是一个库,而不是程序,所以要使用libpcap / WinPcap合并捕获文件,你必须编写自己的代码来进行合并,使用libpcap / WinPcap读取输入文件并写入输出文件。
您可以使用现有工具(例如tracemerge或Wireshark的mergecap)来合并捕获。
假设目标是合并两个文件'按时间戳分组,然后,如果你想编写自己的代码,你就是
pcap_t
之一打开输出文件(它与哪一个无关;所有pcap_t
告诉pcap_dump_open()
使用什么链接层标题类型和快照长度; 并有一个循环:
然后,当您退出循环时,关闭转储文件。那时,你已经完成了。
答案 1 :(得分:0)
可以使用joincap
完成此操作。
go get -u github.com/assafmo/joincap
合并1.pcap
和2.pcap
:
joincap 1.pcap 2.pcap > merged.pcap
我写了joincap
来克服我认为mergecap
和tcpslice
错误处理的错误。
有关详细信息,请转到https://github.com/assafmo/joincap。