本包目录(613 条)
文件与目录76 条文本处理77 条
网络命令82 条
进程与作业69 条磁盘与文件系统51 条用户与权限44 条日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

tcpdump 高级过滤

从「抓个包看看」升级到精准定位:按 TCP 标志位、端口段、VLAN、包长过滤,配合轮转落盘抓长时间窗口。

Linux 运维命令速查系统更新于 2026-10-12
用途BPF 精准过滤抓包
语法tcpdump -ni 接口 '表达式'
常用表达式tcp[tcpflags]、portrange、vlan、greater/less、and/or/not

常用示例

常用示例
tcpdump -ni eth0 'tcp[tcpflags] & (tcp-syn|tcp-fin) != 0'   # 只抓握手/挥手
tcpdump -ni eth0 'portrange 8000-8100'                     # 端口段
tcpdump -ni eth0 -c 20 'vlan 100 and ip'                   # VLAN
tcpdump -ni eth0 -s0 -w /tmp/cap.pcap -C 100 -W 20 'host 10.0.0.5 and port 443'  # 轮转落盘
tcpdump -ni eth0 -A -s0 'port 80 and greater 500'          # ASCII 看内容
排查「包到没到」:在链路两端同时抓同一条件,对比收发差异;-e 显示 MAC/VLAN 层头。

易错点

  • -w 写的是二进制:别用 | grep 硬看,回读用 tcpdump -r 或 Wireshark
  • 忘加 -c/-G 时限容易把磁盘抓满:长窗口务必 -C/-W 轮转并盯目录

数据来源与参考

  • man 8 pcap-filter(tcpdump 官方手册)
  • man 8 tcpdump

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌