【问题标题】:Read pcap.gz file in JS在 JS 中读取 pcap.gz 文件
【发布时间】:2017-08-07 00:50:42
【问题描述】:

我有一个 ~ 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。

这是文件的下载链接:download

非常感谢任何帮助。

【问题讨论】:

    标签: javascript node.js npm gzip pcap


    【解决方案1】:

    我在一些我自己用 Wireshark 制作的 pcap 文件上测试了 NPM pcap 解析器,它适用于 .pcap 和 .pcap.gz。然而,有问题的 pcap 文件显然不是 pcap 文件,而是 pcap-ng 文件,如question 所示。然后解决方案是在wireshark 中加载我的pcap-ng 文件并将其与tcpdump 库一起保存。完成此操作后,NPM pcap 解析器解析文件就好了。我意识到这不是一个完美的解决方案,因为我仍然需要通过wireshark,但这是一个开始。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-23
      • 2020-11-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-19
      • 2020-02-13
      • 2021-03-30
      相关资源
      最近更新 更多