合并两个文件后丢失数据包与Wireshark / mergecap

时间:2016-06-20 20:00:21

标签: merge wireshark pcap-ng

我有两个pcapng文件。每个都是在同一路由器但在不同接口上发生的流量捕获。

由于我想全局研究路由器协议的行为,我想将这两个文件合并为一个,因此研究不同的协议会更容易。

我使用了工具mergcap,例如:

mergecap -w new_file.pcapng file1.pcapng file2.pcapng

根据mergecap手册,文件将按时间顺序合并,基于每个文件中的每个数据包的时间戳.1.capeng和file2.pcapng。

我现在面临的问题是,在合并发生后,我在file1.pcapng中找到的数据包在new_file.pcapng上找不到相同的时间戳。

以前有人做过这样的事吗?我正在使用mergecap 2.0.2。

谢谢!

卢卡斯

1 个答案:

答案 0 :(得分:0)

默认情况下,wireshark按时间顺序从第一个捕获的数据包开始对数据包进行排序。由于您合并了两个捕获文件,因此您有两个捕获开始的数据包,但只有一个是该文件中的第一个数据包。在合并捕获的情况下,基于第一个捕获的数据包按时间对齐数据包是没有意义的。

公平地说,如果wireshark在选择首先捕获的数据包之前按时间顺序排序所有数据包,则可能有意义。目前,文件中的第一个数据包默认为时间参考(请参阅time references)。

谢天谢地wireshark将数据包时间存储为自EPOCH以来的时间戳。这允许使用View > Time Display Format中的几个选项按时间顺序对齐合并文件中的数据包。

从不同机器捕获

以上有一个限制:由于时间戳基于EPOCH,如果您从不同的机器捕获数据包,则需要确保这些机器的时钟对齐。

如果您的捕获文件来自不同的计算机并且这些计算机上的时钟未对齐,则需要在合并之前在其中一个捕获上移动时间戳。反过来,这可以通过wireshark s Edit > Time Shift完成。