我正在寻找有关 pcap-ng 的一些信息。
pcap-ng 和 pcap 有什么区别?
是否有任何用于 pcap-ng 的工具/库?
如何将 pcap 转换为 pcap-ng 并将 pcap-ng 转换为 pcap?
我正在寻找有关 pcap-ng 的一些信息。
pcap-ng 和 pcap 有什么区别?
是否有任何用于 pcap-ng 的工具/库?
如何将 pcap 转换为 pcap-ng 并将 pcap-ng 转换为 pcap?
pcap-ng 和 pcap 有什么区别?
pcap 比 pcap-ng 更老且功能更差,但更简单。这是pcap文件格式的描述;这是 pcap-ng 文件格式的描述。
是否有任何用于 pcap-ng 的工具/库?
较新版本的 libpcap 可以读取一些 pcap-ng 文件(所有接口都需要具有相同的链路层标头类型和快照长度,因为 libpcap API 只能为文件提供一种链路层标头类型和一种快照长度) . Wireshark 包含一个可以读取和写入多种捕获文件格式的库,包括 pcap 和 pcap-ng,但它没有稳定或记录良好的 API(它将在下一个 Wireshark 主要版本中进行相当大的更改更好地支持 pcap-ng 和其他格式)。
如何将 pcap 转换为 pcap-ng 并将 pcap-ng 转换为 pcap?
使用 Wireshark 附带的“editcap”工具。请注意,并非所有 pcap-ng 文件都可以转换为 pcap 文件 - 只有 libpcap 可以读取的文件可以转换(如果 tcpdump 使用较新版本,也可以通过 tcpdump 将这些文件从 pcap-ng 转换为 pcap libpcap 能够读取 pcap-ng 文件)。
如何将 pcap 转换为 pcap-ng 并将 pcap-ng 转换为 pcap?
【Linux/Wireshark 易解】
Guy Harris 回答得很好,但我将专注于最后一个问题,因为我想很多人(像我一样)都通过了并将通过这里寻找关于将 pcapng 转换为 pcap(反之亦然)的简单解释。正如 Guy 所提到的,并非所有 pcap-ng 文件都可以转换为 pcap 文件,因为 editcap 可能不起作用,所以不要将数据包保存为 pcapng 格式,而是保存在 libcap 中。
pcapng -> pcap
以 libcap 格式保存捕获的数据包(示例- 链接指的是 windows-sample,但在 Linux 中相同)
在感兴趣的路径下打开一个shell,按照如下方式使用tcpdump
tcpdump -r file_to_convert -w file_converted
(如果您没有安装 tcpdump,只需使用“apt-get install tcpdump”安装它,或者如果您有不同的 Linux 发行版,请搜索 google)
pcap -> pcappng
使用 Wireshark 打开您的 pcap 文件并将其保存为 pcapng 格式。你已经完成了你的转变。
希望这对我有所帮助。
在PcapNG.com上,有一些关于使用 PCAP-NG 与普通旧 PCAP 相比的优缺点的好信息。
两种格式的主要区别在于 PCAP-NG 允许多种接口类型和注释(即注释)。PCAP-NG 还可以存储名称解析块(即缓存的主机名/DNS 条目),这是一个有用的功能,但也是一个隐私问题。
PcapNG.com 还具有在线转换功能,可让您将任何 PCAP-NG 文件转换回 PCAP 格式。