会占用内存。
在 CentOS(以及所有 Linux 系统)中,任何运行的程序都会占用内存,sniffer(网络嗅探器)也不例外。具体占用多少,取决于你用的是什么 sniffer、抓多少包、怎么配置。
下面分开说明:
tcpdump -i eth0 -w test.pcap
✅ 一般不会造成内存压力
NIC → 内核 packet buffer → sniffer
tcpdump -i eth0 -w capture.pcap
✅ 应使用轮转:
tcpdump -i eth0 -w /var/tmp/cap-%H.pcap -W 10 -C 100
top
ps aux --sort=-%mem
free -h
slabtop
skbuff 相关项高 → 抓包导致内核内存占用✅ 推荐
tcpdump❌ 不推荐
CentOS 上的 sniffer 一定会占用内存,但正常情况下很少;如果抓包策略不当,可能严重占用内存甚至导致系统不稳定。
如果你愿意,可以告诉我:
我可以帮你给出最优抓包参数配置。