首页/网络/抓包与流量分析速查/tcpdump 协议关键字过滤
本包目录(400 条)
tcpdump 过滤实战51 条
Wireshark 技巧75 条TCP 流分析82 条应用层报文判读71 条丢包与时延定位60 条抓包工具链61 条

tcpdump 协议关键字过滤

直接用协议名过滤:ip、ip6、arp、rarp、tcp、udp、icmp、icmp6 等;比用 proto 编号可读,且部分协议名能直接命中嵌套场景。

用途按协议类型过滤报文
语法tcp | udp | icmp | icmp6 | ip | ip6 | arp | rarp [and ...]

常用示例

常用示例
tcpdump -i eth0 -nn icmp
tcpdump -i eth0 -nn 'ip6 and udp port 547'
tcpdump -i eth0 -nn arp -c 20
tcpdump -i eth0 -nn 'ip proto 47'   # GRE
IP 协议号过滤用 ip proto <号>,如 6=TCP、17=UDP、47=GRE、50=ESP、89=OSPF。

易错点

  • tcp/udp 这类关键字作用于 IP 及以上层;在带隧道封装的包上可能匹配内层协议,需结合 -v 判断
  • proto 编号过滤要写 ip proto 6 而不是 port 6,两者含义完全不同

数据来源与参考

  • man 8 pcap-filter(协议原语)
  • RFC 791(IP 协议字段)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌