linux - Ngrep 多个 pcaps

标签 linux pcap ngrep

我将 Moloch 用于 NDR 并将其保存在 10G pcaps 中,不用说有很多。当我尝试通过 ngrep 从 pcaps 解析某些数据时,它一次只允许我解析一个。如果我使用带通配符的简单 ngrep,我会得到 pcap compile: syntax error。

ngrep -I /data/moloch/raw/*.pcap -W none 'host 192.168.0.101' -O /data/moloch/parsed.pcap

如果我用

for file in ls -1 /data/moloch/raw/*.pcap' do nice -n 10 ngrep -O /data/moloch/parsed.pcap -W none 'host 192.168.0.101' done

它会抛出一个预期的“do”命令。抱歉,我确定这是一个简单的问题,但我才刚刚开始使用 Linux,如果有任何帮助,我将非常感激。

最佳答案

解决了问题!

cd /data/moloch/raw
for file in `ls -1 *.pcap`
do
   nice -n 10 ngrep -I $file -q ip host 192.168.0.101 -O /data/moloch/save/$file
done

必须让它为每个读取的文件写入一个 pcap 文件,因为您无法将输出通过管道传输到 pcap 格式,而我必须使用该格式。所以不要附加现有文件。 说完一切后,我将删除所有没有数据的 pcaps,然后使用 mergecap 并创建 1 个 pcap。

关于linux - Ngrep 多个 pcaps,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36183286/

相关文章:

c# - 在 C# 中获取网络接口(interface)名称

linux - 通过 tar 将 Yocto Project 复制到其他 PC

Linux:如何查找手册页或不同版本的 Linux 命令?

c - 实时捕捉上的 Pcap 魔数

http - 如何通过ngrep解压缩HTTP响应体?

我可以用 popen() 解析 ngrep 的输出吗?

php - 不允许 chmod() 操作 - FatFree 框架

linux - 如何可靠地从另一个进程不断写入的文件中读取数据?

java - 将txt数据包数据转为pcap格式用Wireshark打开