wireshark抓包过滤规则

1、过滤协议,直接写协议名称
    例子:
    tcp            #TCP(Transmission Control Protocol 传输控制协议)
    udp            #UDP(User Datagram Protocol 用户数据报协议)
    arp            #ARP(Address Resolution Protocol 地址解析协议)
    icmp           #ICMP(Internet Control Message Protocol Internet Internet 控制报文协议)
    http           #HTTP(HyperText Transfer Protocol 超文本传输协议)
    smtp           #SMTP(Simple Mail Transfer Protocol 简单邮件传输协议)
    ftp            #FTP(File Transfer Protocol 文件传输协议)
    dns            #DNS(Domain Name System 域名系统)
    ip             #IP(Internet Protocol IP协议)
    ssl            #SSL(Secure Sockets Layer 安全套阶层)
    oicq           #(openingIseekyou QQ协议)
    bootp          #BOOTP(Bootstrap Protocol,引导程序协议))
    ......
    排除arp包:   !arp   或者   not arp
2、 过滤源和目的IP地址
 过滤源地址
 ip.src_host eq 192.168.31.106          #相当于
 ip.src_host == 192.168.31.106

 过滤目的地址
 ip.dst_host eq 192.168.31.106          #相当于
 ip.dst_host == 192.168.31.106

 过滤源地址或者目的地址
 ip.addr eq 192.168.31.106                #相当于
 ip.addr == 192.168.31.106

提示: 在Filter编辑框中,收入过虑规则时,如果语法有误,框会显红色,如正确,会是绿色。
例如:
语法正确如下图:

图片.png

语法错误如下图:

图片.png

3、针对端口进行过滤
  例子:
  tcp.port eq 80                    #不管端口是来源的还是目标的都显示,相当于
  tcp.port == 80

  tcp.port eq 80 or udp.port eq 80

  tcp.srcport == 80                 #只显tcp协议的源端口80
  tcp.dstport == 80                 #只显tcp协议的目标端口80

  udp.port eq 15000
  tcp.port >= 1 and tcp.port <= 80  #过滤端口范围
4、过滤MAC地址
  eth.addr eq B4-6D-83-2B-27-D5

  eth.src eq B4-6D-83-2B-27-D5 // 过滤来源mac
  eth.dst == B4-6D-83-2B-27-D5 // 过滤目标mac
5、针对http的请求类型进行过滤
  http.request.method == "GET"
  http.request.method == "POST"

====================备注:

  <          lt          less than 小于 
  <=         le          小于等于
  ==         eq          等于
  >          gt          大于
  >=         ge          大于等于 
  !=         ne          不等于

以上个人总结常用过滤方法
更多详情推荐博客:https://blog.csdn.net/hzhsan/article/details/43453251