如何在 Linux 中将 tcpdump 捕获到压缩文件

Yas*_*u G 3 linux compression tcpdump bzip2 bz2

我有一个 DNS 服务器,我想捕获 DNS 流量以获取使用我的 DNS 服务器的所有 IP。

为此,我开始使用以下tcpdump命令并将它们捕获到文件中:

tcpdump -n -i eth0 dst port 53 >> dns_data.log
Run Code Online (Sandbox Code Playgroud)

但当我长时间运行时,文件大小会很大。我怎样才能将其捕获到压缩文件中?我尝试了下面的命令,但它不起作用。

tcpdump -n -i eth0 dst port 53 | bzip2 -c >> dns_data.bz2
Run Code Online (Sandbox Code Playgroud)

小智 5

尝试类似的东西tcpdump -G 3600 -w 'trace_%Y-%m-%d_%H:%M:%S.pcap' -z gzip

-GN表示每N(3600)秒旋转一次。 -z command表示轮换后运行命令(gzip)。