温馨提示×

CentOS Sniffer怎么保存抓包数据

小樊
76
2026-08-30 08:22:03
栏目: 智能运维

在 CentOS 上,“Sniffer”通常指使用 tcpdump / wireshark / tshark 等抓包工具。下面以 tcpdump(最常用) 为主,介绍如何保存抓包数据。


一、使用 tcpdump 保存抓包数据(推荐)

1️⃣ 基本保存方式

tcpdump -i eth0 -w capture.pcap
  • -i eth0:指定网卡(可用 ip addr 查看)
  • -w capture.pcap:保存为 pcap 文件
  • 保存到当前目录

✅ 文件可直接用 Wireshark 打开


2️⃣ 指定抓包数量

tcpdump -i eth0 -c 100 -w capture.pcap

只抓 100 个包


3️⃣ 抓指定端口(如 80)

tcpdump -i eth0 port 80 -w http.pcap

4️⃣ 抓指定主机

tcpdump -i eth0 host 192.168.1.10 -w host.pcap

5️⃣ 抓多个条件(AND / OR)

tcpdump -i eth0 host 192.168.1.10 and port 443 -w https.pcap

6️⃣ 不显示屏幕输出(纯保存)

tcpdump -i eth0 -w capture.pcap -n -q

二、后台抓包(长时间保存)

1️⃣ 使用 nohup

nohup tcpdump -i eth0 -w capture.pcap > tcpdump.log 2>&1 &

查看进程:

ps -ef | grep tcpdump

停止抓包:

kill <PID>

2️⃣ 定时自动停止(例如 1 小时)

timeout 3600 tcpdump -i eth0 -w capture.pcap

三、使用 tshark(Wireshark 命令行版)

安装

yum install -y wireshark-cli

保存抓包

tshark -i eth0 -w capture.pcap

四、查看抓包文件

1️⃣ 在 CentOS 上查看

tcpdump -r capture.pcap

2️⃣ 拷贝到本地用 Wireshark 分析

scp capture.pcap user@pc:/data/

五、常见问题

✅ 权限不足

sudo tcpdump -i eth0 -w capture.pcap

或

yum install -y libpcap

✅ 找不到网卡

ip addr

或

tcpdump -D

六、总结(最常用命令)

tcpdump -i eth0 -w capture.pcap

如果你告诉我:

  • 抓 哪个协议(HTTP / DNS / TCP)
  • 是否 远程服务器
  • 是否 持续抓包

我可以帮你写一条精准的抓包命令 ✅

0 踩