这两天一直在熟悉wireshark的过滤器语法规则,以前也接触过这个工具,但只是学校老师教的如何去选择一个接口进行抓取,以及如何去分析一个包的数据。可惜当时对此也没有过多深入。对于我当前,并未接触太多的功能,现在只是对这两天学到的一些简单的过滤规则做一个总结。
  1. 测试环境说明

2. 过滤器规则说明
  目前网络上对于wireshark的流程使用实在太多,在此也就不再赘述,现只针对过滤器的一些简单使用规则进行一些举例说明。
  要注意的是wireshark中,分为两种过滤器:捕获过滤器和显示过滤器。
  【捕获过滤器】是指wireshark一开始在抓包时,就确定要抓取哪些类型的包;对于不需要的,不进行抓取;
  【显示过滤器】是指wireshark对所有的包都进行抓取,当用户分析数据包的信息,便于筛选出需要的数据包。
  总结来说,捕获过滤器是在用户开始任务之前就要使用的规则;而显示过滤器是任务开始之后(无论是否已完成)要使用的规则。
  两种过滤器语法规则不尽相同,下面做出一些示例:
  a)捕获过滤器

1)语法结构
  Protocols
  ether,fddi,ip,arp,rarp,decnet,lat,sca,moprc,mopdl,tcp and udp
  注:若不指定,默认使用所有支持的协议
  Direction
  src,dst,src and dst,src or dst
  注:若不指定,默认使用双向(src or host)
  Host
  net,port,host,portrange
  注:若不指定,默认所有(host)
  Logical Operations
  and,or,not
  注:not优先级最高,or和not优先级相等,从左至右依次运算
  Other expression
  其他的过滤条件,当有多重表达条件时与Logica Operatios 一起连用
  2)使用示例
  【过滤地址】
  host 192.168.1.1  //只抓取源/目的IP为192.168.1.1的数据包
  src host 192.168.1.1 && dst host 192.168.1.2  //只抓取源IP为192.168.1.1,目的IP为192.168.1.2的数据包
  net 192.168.1.0/24 net  //用于表示一个网段
  【过滤端口】
  !port 80  //不抓取端口为80的数据包
  tcp portrange 1-1024  //只抓取使用tcp协议的1-1024端口的数据包
  dst port 80  //只抓取目标端口为80的所有数据包
  src host 192.168.1.5 && port 443   //抓取所有源IP为192.168.1.5,并且与443端口有关的数据包
  【过滤协议】
  tcp,udp,icmp,arp  //直接输入某一个协议,则只抓取该协议的数据包
  !brocast  //使用逻辑非运算符,不抓取广播包
  b) 显示过滤器

1)使用示例
  【可使用连接符】
  ==(eq)  //等于,equal
  !=(ne)  //不等于,no equal
  <(lt)  //小于,less than
  >(gt)  //大于,great than
  >=(ge)  //大于等于,great equal
  <=(le)  //小于等于,less equal
  &&  //逻辑“与”运算
  ||  //逻辑“或”运算
  !  //逻辑“非”运算
  【过滤IP地址】
  ip.addr==192.168.1.3  //只显示源/目的IP为192.168.1.3的数据包
  not ip.src==1.1.1.1  //不显示源IP为1.1.1.1的数据包
  ip.src==1.1.1.1 or ip.dst==1.1.1.2  //只显示源IP为1.1.1.1或目的IP为1.1.1.2的数据包
  【过滤端口】
  tcp.port eq 80  //只显示源/目的端口为80的数据包
  tcp.dstport==80  //只显示目的端口为80的数据包
  tcp.srcport
  tcp.port >=1 and tcp.port<=80  //只显示源/目的端口大于等于1,小于等于80的数据包
  【过滤MAC地址】
  eth.dst==A0:00:00:04:C5:84  //只显示目的MAC为A0:00:00:04:C5:84 的数据包
  eth.addr eq A0:00:00:04:C5:84  //作用同上
  【过滤协议类别】
  tcp、ip、dhcp、oicq、ftp、ssl等等
  udp || icmp || dns  //只显示udp、icmp、dns相关协议的数据包
  not arp 等于 !arp  //不显示arp协议的数据包
  【过滤协议参数】
  tcp.flags.syn == 0x02  //显示包含syn标志位的数据包
  frame.len==119  //整个数据包长度,从eth开始到最后
  http.request.method=="get"  //显示http请求中method值为get的包
  tips:如图所示,在显示过滤器中输入规则时,会出现提示信息,可据此了解更多的协议过滤规则

c) 注意事项
  1)捕获过滤器对于一个选项的参数之间使用空格进行连接
  2)显示过滤器对于一个选项的参数之间使用点”.”进行连接
  3) 输入过滤器规则时,如果语法正确,底色显示为绿色;如果语法错误,显示为红色。
  4) 使用捕获过滤器时,要先选择要捕获的接口,再填写过滤器规则

文章引用来源:http://www.51testing.com/html/10/n-3723710.html

wireshark基础学习—第四部分wireshark过滤器总结的更多相关文章

  1. wireshark基础学习—第三部分wireshark的过滤器语法

    我们都知道,wireshark可以实现本地抓包,同时Wireshark也支持remote packet capture protocol(rpcapd)协议远程抓包,只要在远程主机上安装相应的rpca ...

  2. JavaScript 基础 学习 (四)

    JavaScript 基础 学习 (四) 解绑事件 dom级 事件解绑 ​ 元素.on事件类型 = null ​ 因为赋值的关系,所以给事件赋值为 null 的时候 ​ 事件触发的时候,就没有事件处理 ...

  3. wireshark基础学习—第二部分wireshark的基础操作

    抓取报文: 下载和安装好Wireshark之后,启动Wireshark并且在接口列表中选择接口名,然后开始在此接口上抓包.例如,如果想要在无线网络上抓取流量,点击无线接口.点击Capture Opti ...

  4. wireshark基础学习—第一部分wireshark的基础知识

    1.Wireshark主窗口 Wireshark的主窗口如下所示 2.每个面板的内容 Packet List(数据包列表): 最上面的面板用表格显示了当前不惑文件中的所有数据包,其中包括了数据包序号. ...

  5. javascript基础学习(四)

    javascript之流程控制语句 学习要点: 表达式语句含义 选择语句:if.if...else.switch 循环语句:while.do...while.for.for...in 跳转语句:bre ...

  6. Servlet基础知识(四)——Servlet过滤器Filter

    一.什么是过滤器: 政府大楼的安检保安,它既能对进入政府大楼的人员进行检查,只允许检查符合要求的进入:同时他也负责对出大楼的人进行检查,看他带出的东西是否符合要求. 同样的,Servlet中的过滤器既 ...

  7. Java基础学习笔记四 Java基础语法

    数组 数组的需求 现在需要统计某公司员工的工资情况,例如计算平均工资.最高工资等.假设该公司有50名员工,用前面所学的知识完成,那么程序首先需要声明50个变量来分别记住每位员工的工资,这样做会显得很麻 ...

  8. Java基础学习(四)-- 接口、集合框架、Collection、泛型详解

    接口 一.接口的基本概念 关键字为:Interface,在JAVA编程语言中是一个抽象类型,是抽象方法的集合.也是使用.java文件编写.   二.接口声明 命名规范:与类名的命名规范相同,通常情况下 ...

  9. <数据结构基础学习>(四)链表 Part 1

    一.链表基础 动态数组.栈.队列底层都是依托静态数组实现的,靠resize来解决固定容量问题. 链表是真正的动态数据结构,是一种最简单的一种动态数据结构. 更深入的理解引用(或者指针). 更深入的理解 ...

随机推荐

  1. 字符串只截取小数后n位,不做四舍五入

    例子1: var num = "112233.99887766";console.log(num.substring(0,(num.indexOf(".")+5 ...

  2. MATLAB关系运算符和逻辑运算符

    1 关系运算符 关系运算符用来比较两个数之间的大小关系,在Matlab中的关系运算符包括: <  小于 <= 小于或等于 >        大于 >=      大于或等于 = ...

  3. Centos7下使用Ceph-deploy快速部署Ceph分布式存储-操作记录

    之前已详细介绍了Ceph分布式存储基础知识,下面简单记录下Centos7使用Ceph-deploy快速部署Ceph环境: 1)基本环境 192.168.10.220 ceph-admin(ceph-d ...

  4. day13 python迭代器与生成器

    迭代器 字符串.列表.元组.字典.集合都可以被for循环,说明他们都是可迭代的 可迭代协议 : 就是内部实现了__iter__方法 可以被for循环的都是可迭代的,要想可迭代,内部必须有一个__ite ...

  5. Hashtable几种常用的遍历方法

    Hashtable 在System.Collection是命名空间李Hashtable是程序员经常用到的类,它以快速检索著称,是研发人员开发当中不可缺少的利器. Hashtable表示键/值对的集合, ...

  6. centos7安装nginx1.10.1

    安装nginx. 1.首先在根目录下创建一个software文件夹用来存储下载的压缩包. 2.然后cd跳转的software文件夹下,进行压缩包的下载 wget -c https://nginx.or ...

  7. dataguard日志自动删除

    dataguard日志自动删除 1.判断日志是否已经应用到今天.2.删除3天前的日志.3.主机.备机分别配置 ----check_del_arch.sh#!/bin/shORACLE_HOME=/ho ...

  8. 福州大学软件工程1916 | W班 作业成绩排名汇总

    评分链接: 第一次作业-准备篇 https://www.cnblogs.com/deerCode/p/10527237.html 第二次作业-结对第一次-文献摘要热词统计原型设计 https://ww ...

  9. linux用户键拷贝文件

    如果A用户没有权限写B用户下面的文件,可以用这个命令拷贝 scp AAA.tar.gz B用户名@IP:全路径

  10. CAN自收自发问题小结

    2011-12-02 21:59:23 流程图: CAN自收自发问题小结 1,地址如何确定?  答:51的片外扩展地址,R/W脚的电平会根据代码自动更改,不需要设置.    参考 单片机的外部存储器的 ...