tcpdump 抓包要点
tcpdump 是 Linux 侧的抓包工具,几个参数决定结果可用性:指定网卡接口、禁用名称解析以避免每次抓包都发查询、抓完整包长度以免分析时被截断、输出到文件供后续分析,以及限制包数避免抓过量。过滤器用主机、端口与网段组合收窄流量,能显著减小文件体积。抓完后用 Wireshark 或 tshark 做协议分析,需要回顾时用读取模式回放文件。抓包范围与保留期限必须写入评估计划,因为链路上可能包含个人数据。
基本信息
| 关键参数 | 接口、禁用解析、完整包长、写盘与包数限制 |
|---|---|
| 过滤器 | 按主机、端口与网段组合收窄范围 |
| 回放方式 | 用读取模式打开已保存的抓包文件 |
| 命名要求 | 文件名含目标与时间,避免互相覆盖 |
典型使用场景
- 明文协议核查:确认某服务是否以明文传输凭据或数据
- 故障排查:定位网络层的重传、丢包与连接重置
- 配置核对:确认实际使用的协议与端口是否与文档一致
- 取证留存:为某次验证保留原始流量作为证据
- 接入审计:观察设备是否按策略外联与上报
抓包示例
抓包示例
tcpdump -i eth0 -nn -s0 -w /cases/2026-001/cap/http.pcap 'host 10.0.10.5 and tcp port 80'
# -i 指定网卡,-nn 不做名称解析,-s0 抓完整包,-w 写入文件
# 快速看明文内容时限制包数并打印可读字符
tcpdump -i eth0 -nn -c 200 -A 'tcp port 8080' | tee http-plain.txt
tcpdump -r http.pcap -nn | head # 回读文件做初步确认常用参数与作用
| 参数 | 作用 | 注意事项 |
|---|---|---|
| 接口 | 指定监听网卡 | 选错接口会抓不到目标流量 |
| 禁用解析 | 不做地址与端口名称解析 | 避免额外查询与噪音 |
| 完整包长 | 抓取整包 | 不设置会导致分析时被截断 |
| 写盘 | 保存为抓包文件 | 文件名需含目标与时间 |
| 包数限制 | 限定抓取数量 | 防止文件过大与磁盘占满 |
禁止在未授权链路上抓包:链路流量可能包含无关用户的通信内容与个人数据,越界后果严重。