【发布时间】:2016-12-17 17:42:23
【问题描述】:
我想在 node.js 中获取 pcap 的数据,如帧号、帧时间、ip 等。但是,我找不到我想要的任何模块。所以,我尝试使用 tshark。但是结果值被削减了。那么,怎样才能得到完美的结果呢?
以下是我尝试的一些细节。
var spawn = require('child_process').spawn;
var fs = require('fs');
var args = [
'-Tfields',
'-e', 'frame.number',
'-e', 'frame.time',
'-e', 'ip.src',
'-e', 'ip.dst',
'-e', 'ip.proto',
'-e', 'tcp.srcport',
'-e', 'tcp.dstport',
'-e', 'udp.srcport',
'-e', 'udp.srcport',
'-e', 'udp.dstport',
'-e', 'ip.len',
'-E', 'header=y',
'-r', 'smallFlows.pcap'
];
var cmd = spawn('tshark', args, {
cwd: 'C:\\Program Files\\Wireshark\\'
});
cmd.stdout.on('data', function(data) {
console.log('done!');
fs.writeFile('result.txt', data, function(err) {
if(err) throw err;
console.log('It\'s saved!');
});
});
cmd.stderr.on('data', function(data) {
});
cmd.on('exit', function(code) {
console.log('child process exited with code ' + code);
});
结果
【问题讨论】:
-
我也看到了这个包。但是我的环境是 Windows 10。当我安装它时,发生了 node-gyp 重建问题。解决这个问题太难了,解决方案不适用……
-
FWIW 还有
cap支持 Windows。 -
'cap' 有同样的问题。我认为它是连接的'socketwatcher 模块'。
-
啊,我的错。然而,
cap也有关于node-gyp rebuild相关The build tools for Visual Studio 2010的问题。为了解决这个问题,我安装了构建工具。尽管如此,我还没有解决这个问题。
标签: javascript node.js pcap fs spawn