tcpdump 命令生成器
可视化配置抓包参数,自动生成 tcpdump 命令,一键复制
场景示例 — 点击「填入」加载常用抓包场景
抓取 HTTP/HTTPS 流量
监听 80/443 端口的所有 TCP 流量
抓取 DNS 查询
监听 UDP 53 端口的 DNS 请求和响应
抓取 TCP SYN 包
排查连接建立问题,只抓 SYN 标志位的包
保存抓包文件
抓取所有流量保存为 .pcap 供 Wireshark 分析
关于 tcpdump 命令生成器
- tcpdump 是 Linux/macOS 下最常用的命令行网络抓包工具,支持 BPF(Berkeley Packet Filter)过滤语法
- 适用于网络故障排查、协议分析、安全审计等场景,抓取的 .pcap 文件可用 Wireshark 进行可视化分析
- 运行 tcpdump 通常需要 root 权限或 CAP_NET_RAW 能力
操作说明
- 配置网络接口、协议、IP/端口等过滤条件,点击「生成命令」
- 可在「自定义 BPF 过滤表达式」中追加复杂过滤条件(如
tcp[tcpflags] & tcp-syn != 0) - 点击「示例」加载常用场景;点击「复制」一键复制命令到剪贴板
- 支持 Ctrl+Enter 快捷键触发生成
注意事项
- 在生产环境抓包时注意流量量级,避免因抓包导致性能问题;建议加
-c限制抓包数量 - 抓包文件可能包含敏感信息(密码、Token),请妥善保管,分析完毕后及时删除
- 部分云服务器/容器环境可能限制 tcpdump 权限,需联系运维开通
- 所有处理均在浏览器本地完成,不会上传任何数据
tcpdump 知识详解
常用参数速查
| 参数 | 说明 | 示例 |
|---|---|---|
-i | 指定网络接口 | -i eth0 |
-n | 不将 IP 解析为主机名 | -n |
-nn | 不解析主机名和端口名 | -nn |
-c | 抓取指定数量的包后退出 | -c 100 |
-w | 将抓包结果写入文件 | -w out.pcap |
-r | 从文件读取抓包数据 | -r out.pcap |
-X | 以十六进制和 ASCII 显示包内容 | -X |
-A | 以 ASCII 显示包内容(适合 HTTP) | -A |
-s | 设置抓包长度(0=完整包) | -s 0 |
BPF 过滤语法速查
# 按主机过滤
host 192.168.1.1 # 源或目标是该 IP
src host 192.168.1.1 # 源 IP
dst host 192.168.1.1 # 目标 IP
# 按端口过滤
port 80 # 源或目标端口 80
src port 1234 # 源端口
dst port 443 # 目标端口
portrange 8000-9000 # 端口范围
# 按协议过滤
tcp / udp / icmp / arp
# 组合过滤(and / or / not)
tcp and dst port 80
host 10.0.0.1 and not port 22
src net 192.168.0.0/24
# TCP 标志位过滤
tcp[tcpflags] & tcp-syn != 0 # SYN 包
tcp[tcpflags] & tcp-rst != 0 # RST 包
与 Wireshark 配合使用
- 使用
-w capture.pcap将抓包结果保存为文件,传输到本地后用 Wireshark 打开 - Wireshark 支持 tcpdump 的 BPF 过滤语法,也支持更强大的显示过滤器(Display Filter)
- 远程抓包:
ssh user@server "tcpdump -w - -i eth0 port 80" | wireshark -k -i - - 实时查看:
tcpdump -A -i eth0 port 80(直接在终端显示 HTTP 内容)