按时间和大小限制 tcpdump 捕获文件

use*_*355 2 bash logging tcpdump

我在使用 tcpdump 将所有 Internet 流量记录在具有以下限制的接口上时遇到了一些问题:

  • 我想每小时创建一个新的 pcap 文件,名称中带有时间和日期标签
  • 如果这一小时内的 pcap 文件变得大于 100M,则创建一个新的 pcapfile,其名称与以前相同,但带有 -2 -3 -4 ... 后缀。

我正在使用以下命令:

tcpdump -pni eth0 -s65535 -G 3600 -C 100 -w '/var/log/tcpdump/trace_%Y-%m-%d_%H:%M:%S.pcap'

因此,我每小时都会收到一个日志文件,但如果文件大于 100,它似乎不会拆分文件。

有谁知道我在哪里搞砸了?为帮助干杯

Gio*_*Mac 5

您的命令应该可以工作,也许存在错误。

改用 tshark(wireshark 包):

tshark -i eth0 -b duration:3600 -b filesize:102400 -s 65535 -w trace.pcap

创建的文件名基于使用 -w 选项给出的文件名、文件编号以及创建日期和时间,例如 outfile_00001_20050604120117.pcap、outfile_00002_20050604120523.pcap、...