在 JS 中读取 pcap.gz 个文件
Read pcap.gz file in JS
我有一个 ~ 500gb pcap.gz 文件,我想使用 node.js 阅读。我尝试使用 wireshark 将此文件导出为 JSON 但是它花了大约一个小时并产生了一个 47 GB 的文件(大到不实用)。我最终找到了一个节点模块 here,它应该能够读取 pcap 文件。然后我使用 7zip 提取 pcap 文件(生成一个超过 2 GB 的文件)并尝试 运行 此代码:
var pcapp = require('pcap-parser');
var parser = pcapp.parse('C:/Users/.../data.pcap');
parser.on('packet', function(packet) {
console.log(packet);
});
并得到以下错误代码
events.js:182
throw er; // Unhandled 'error' event
^
Error: unknown magic number: 0a0d0d0a
对我来说最理想的是 node.js 脚本,它可以解析 pcap.gz 文件,这样我就不必通过任何中间应用程序,例如 wireshark 或 7zip。
这是文件的下载 link:download
非常感谢任何帮助。
我在自己使用 Wireshark 制作的一些 pcap 文件上测试了 NPM pcap 解析器,它在 .pcap 和 .pcap.gz 上都运行良好。然而,有问题的 pcap 文件显然不是 pcap 文件,而是 pcap-ng 文件,如 question 中所示。然后解决方案是在 wireshark 中加载我的 pcap-ng 文件,并使用 tcpdump 库保存它。完成此操作后,NPM pcap 解析器就可以很好地解析文件。我意识到这不是一个完美的解决方案,因为我仍然需要通过 wireshark,但这是一个开始。
我有一个 ~ 500gb pcap.gz 文件,我想使用 node.js 阅读。我尝试使用 wireshark 将此文件导出为 JSON 但是它花了大约一个小时并产生了一个 47 GB 的文件(大到不实用)。我最终找到了一个节点模块 here,它应该能够读取 pcap 文件。然后我使用 7zip 提取 pcap 文件(生成一个超过 2 GB 的文件)并尝试 运行 此代码:
var pcapp = require('pcap-parser');
var parser = pcapp.parse('C:/Users/.../data.pcap');
parser.on('packet', function(packet) {
console.log(packet);
});
并得到以下错误代码
events.js:182
throw er; // Unhandled 'error' event
^
Error: unknown magic number: 0a0d0d0a
对我来说最理想的是 node.js 脚本,它可以解析 pcap.gz 文件,这样我就不必通过任何中间应用程序,例如 wireshark 或 7zip。
这是文件的下载 link:download
非常感谢任何帮助。
我在自己使用 Wireshark 制作的一些 pcap 文件上测试了 NPM pcap 解析器,它在 .pcap 和 .pcap.gz 上都运行良好。然而,有问题的 pcap 文件显然不是 pcap 文件,而是 pcap-ng 文件,如 question 中所示。然后解决方案是在 wireshark 中加载我的 pcap-ng 文件,并使用 tcpdump 库保存它。完成此操作后,NPM pcap 解析器就可以很好地解析文件。我意识到这不是一个完美的解决方案,因为我仍然需要通过 wireshark,但这是一个开始。