一 概况

  本文是对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

    

最新文章

  1. Centos6.2设置静态ip和dns
  2. STMFD 和LDMFD指令
  3. 自制操作系统(七) 加快中断处理,和加入FIFO缓冲区
  4. MVC5 条件查询异步刷新
  5. python基础(内置函数+文件操作+lambda)
  6. CoreSeek中文检索引擎
  7. 使用自定义《UIActivity》进行内容分享-b
  8. Qt构建工具QBS之零 —— QBS 概览
  9. Codekart 框架
  10. PAT乙级-1063. 计算谱半径(20)
  11. 记一次物理机安装centos7.5 出现黑屏的问题
  12. v-charts 第一次亲密接触
  13. 如何利用Python实现自动打卡签到
  14. Jenkins: 1.x升级到2.x
  15. 主成分分析PCA(Principal Component Analysis)在sklearn中的应用及部分源码分析
  16. 正则表达式——WPF输入控件TextBox 限定输入特定字符
  17. JQueryMobile开发必须的知道的知识
  18. 【opencv】c++ 读取图片 &amp; 绘制点 &amp; 绘制文字 &amp; 保存图片
  19. python:用setup.py安装第三方包packages
  20. redux-saga框架使用详解及Demo教程

热门文章

  1. QT下 enum转QString
  2. vue.js 视频教程
  3. SQLite 读取数据时,随机顺序
  4. Java日志框架
  5. 湖南大学第十四届ACM程序设计新生杯(重现赛)I:II play with GG(博弈论||DP)
  6. register form code(2nd week blog)
  7. 作业二:构建swap函数
  8. JS写法 数值与字符串的相互转换 取字符中的一部分显示 正则表达规则
  9. 学习笔记TF055:TensorFlow神经网络简单实现一元二次函数
  10. req和resp常用的方法