一 概况

  本文是对wireshark抓包过滤器, 跟显示过滤器的总结

  由于一些未知的原因, 这俩过滤器的语法并不一样!

  我大概知道为什么不一样了, 因为这俩出现的顺序不一样, 抓包过滤器先出现的, 可能当时参考了tcpdump的语法; 而显示过滤器是后出现的, 所以语法设计上更人性化一些, 为了兼容性的考虑, 要让后来的使用者同时学习两套语法?!

  

二 抓包过滤器

  0 符号  

    位运算

      & |

    逻辑运算

      ! (或者not)

      &&(或者 and)

      ||(或者or)

      > >= < <= ==

  1 二层过滤器

    ether host mac地址 (eg: ether host 00:24:d6:ab:98:b6)

    ether src mac地址

    ether dst mac地址

    ether multicast

    ether broadcast(或者 ether dst ff:ff:ff:ff:ff:ff)

    ether proto <protocol>  (eg: ether proto 0x0806(arp))

    vlan <vlan_id>: 只抓取特定vlan的流量

  2 三层过滤器

    ip(或者ip6) : 只抓取ipv4或者ipv6的流量

    gateway <主机名>:  表示抓取主机名对应的mac地址包, 且不抓取主机名对应的ip地址,感觉很像是抓取网关的流量, 不太常用, 等实际用到了, 再改

    broadcast: ip广播包

    multicast: ip多播包

    icmp [icmptype] ==<identifier>: 抓取特定类型的icmp包(eg: icmp[icmptype] ==8 ;icmp[icmptype]==icmp-echo)

    host <host> eg: host 192.168.1.1 , host www.baidu.com

    src host <host>

    dst host <host>

    net <net>: 抓取源自或者发往某个网段的ipv4或ipv6的包 (eg: net 192.168.1 抓取192.168.1.0/24网络的包; net 2001::/16 )

    dst net <net>

    src net <net>

    以下只针对ipv4包有效

    ++++++++++++++++++++++++++++++++++++++++++++++++++++++

    net <net> mask <netmask>: 用掩码表示网络 (eg: net 192.168.1.0 mask 255. 255. 255. 0抓取192.168.1.0/24网络的包)

    src net <net> mask <netmask>

    dst net <net> mask <netmask>

    net <net>/<len>: 掩码位表示网络 (eg: net 192.168.1.0/24 抓取192.168.1.0/24网络的包)

    src net <net>/<len>

    dst net <net>/<len>

    ++++++++++++++++++++++++++++++++++++++++++++++++++++++

    ip proto <protocol code>: 根据ipv4上层协议字段过滤(eg: ip proto 1 ==> 只抓取icmp包)

    ip6 proto <protocol> 根据ipv6包头的下一个包头字段来过滤

    ip[num1:num2] ==<num3> : 过滤ipv4包头从num1开始的num2长度的整数等于num3的包,":num2"没有的话, 表示1字节

  3 四层过滤器

    port <port>: 根据tcp或udp端口号过滤

    src port <port>

    dst port <port>

    tcp/udp portrange <p1>-<p2>: 抓取端口范围在[p1,p2]里面的包

    tcp/udp[num1:num2] ==num3

    

wireshark过滤器的更多相关文章

  1. wireshark系列之wireshark过滤器

    一:过滤器 使用wireshark工具抓包,如果使用默认配置,会得到大量的数据,所以我们就很难找到我们要分析的封包数据.所以使用wireshark过滤器就显得尤为重要. wireshark过滤器分为两 ...

  2. Wireshark过滤器详解

    Wireshark过滤器详解 1.Wireshark主要提供两种主要的过滤器 捕获过滤器:当进行数据包捕获时,只有那些满足给定的包含/排除表达式的数据包会被捕获 显示过滤器:该过滤器根据指定的表达式用 ...

  3. 抓包工具Wireshark过滤器

    抓包工具WireShark分为两种过滤器: 捕捉过滤器(CaptureFilters) 显示过滤器(DisplayFilters) 捕捉过虑器语法: Protocol  Direction  Host ...

  4. wireshark基础学习—第四部分wireshark过滤器总结

    这两天一直在熟悉wireshark的过滤器语法规则,以前也接触过这个工具,但只是学校老师教的如何去选择一个接口进行抓取,以及如何去分析一个包的数据.可惜当时对此也没有过多深入.对于我当前,并未接触太多 ...

  5. Wireshark 过滤器语法

    wireshark有两种过滤器: 捕捉过滤器(CaptureFilters):用于决定将什么样的信息记录在捕捉结果中. 显示过滤器(DisplayFilters):用于在捕捉结果中进行详细查找. 捕捉 ...

  6. Wireshark过滤器写法总结

    目录 #Wireshark提供了两种过滤器: 1.捕获过滤器 2.显示过滤器 #过滤器具体写法 #显示过滤器写法 #捕捉过滤器写法 #Wireshark提供了两种过滤器: 1.捕获过滤器 捕获过滤器: ...

  7. WireShark过滤器选项

    首先说几个最常用的关键字,"eq" 和 "=="等同,可以使用 "and" 表示并且,"or"表示或者."!& ...

  8. Wireshark 过滤器的使用

    符号 例子 = = tcp.port = = 80 过滤出来TCP包含80端口的数据包 != ip.src != 127.0.0.1 ip的原地址不是127.0.0.1过滤出来 > lp.len ...

  9. Wireshark图解教程(简介、抓包、过滤器)

    开篇语 Wireshark是世界上最流行的网络分析工具.这个强大的工具可以捕捉网络中的数据,并为用户提供关于网络和上层协议的各种信息.与很多其他网络工具一样,Wireshark也使用pcap netw ...

随机推荐

  1. thinkphp5.0--编写api,返回json格式

    前几天没有写php代码,今天写了一下,今天的任务主要是构建自己的异常体系类,出现一个问题,就是返回结果不是json格式,而是一个页面,我找了一两个小时,没有找到问题,以为代码的问题,用断点调试了一通, ...

  2. zuul1.3源码扒一扒(1)

    先开个头吧 作为偶尔点进源码的时候看到东西,或是学到,或是不解,或是惊讶,之后的一些记录.从springcloud各个组件开始吧,计划文段保持间断,只道出核心点,不过各个文段保持连续. zuul作为s ...

  3. HQL知识点一

    Hive创表语法 create [external] table [if not exists] [db_name.]table_name (col1_name data_type,col2_name ...

  4. 浅析toString()和toLocaleString()的区别

    翻看<javascript高级程序设计>,对toString()和toLocaleString()两者的区别并没有直白的说明,简单查阅了一下 ecmascript官方文档 和 MDN 二者 ...

  5. Python多线程的运行及time.sleep()的应用

    已知小明和其弟弟小白每月都需要生活费,二人同时从同一个账户中取钱,两人每人每月需要1000元,账户中现有余额3200元,如果卡内余额大于2000元,则父母不会存入,如果卡内余额小于2000元,则父母当 ...

  6. dee

    窗口居中def center(self): screen = QDesktopWidget().screenGeometry() size = self.geometry() self.move((s ...

  7. java中数组实现的错误

    作为一个刚学java的小白 真是错误百出 下面就是一个大神会非常不屑的一个小错误 数组在初始化的时候仅仅是定义了一个数组,并未其中的内容初始化. 附上错误代码 : class student{publ ...

  8. switch_case注意事项

    1.switch 语句有至少一个 case 代码块和一个可选的 default 代码块. 这里的 switch 从第一个 case 分支比较 a 的值,值为 3 匹配失败.然后比较 4.匹配,所以从  ...

  9. python3-datetime.date详解(一)

    datetime是python操作日期和时间的内置模块. python有两种日期.时间对象:“naive”和“aware”.前者由于忽略了实际情况更容易理解,操作.在任何时间空间内,它的值都取决于一个 ...

  10. P2257 莫比乌斯+整除分块

    #include<bits/stdc++.h> #define ll long long using namespace std; ; int vis[maxn]; int mu[maxn ...