若是使用Wireshark捕获数据包时,默认捕获全部协议的数据包。若是接收到的数据包过多时,想要查看本身想看的数据包,可能很是困难。幸运的是,Wireshark工具能够经过建立过滤器的方式,实现数据包过滤。下面将介绍Wireshark工具的过滤器使用规则。本文选自《ARP协议全面实战手册——协议详解、攻击与防护》express
在Wireshark工具中提供了两种过滤器,分别是捕捉过滤器和显示过滤器。首先来看下这两种过滤器的区别。tcp
q 捕捉过滤器:用来决定将什么样的信息记录在捕捉结果中。须要在开始捕捉前设置。工具
q 显示过滤器:在捕捉结果中进行详细查找。用户能够在获得捕捉结果后随意修改。spa
从概念上来讲,两种过滤器的目的是不一样的。捕捉过滤器是数据通过的第一层过滤器,它用于控制捕捉数据的数量,以免产生过大的日志文件。显示过滤器是一种更为强大(复杂)的过滤器。它容许用户在日志文件中迅速准确地找到所须要的记录。并且这两种过滤器使用的语法是彻底不一样的。日志
下面分别介绍这两种过滤器的语法及使用方法。orm
1.捕捉过滤器ip
捕捉过滤器的语法格式以下所示:字符串
Protocol Direction Host(s) Value Logical Operations Other expressionit
以上语法中各选项含义以下所示:io
q Protocol(协议):该选项用来指定协议。可以使用的值有ether、fddi、ip、arp、rarp、decnet、lat、sca、moproc、mopdl、tcp、dup。若是没有特别指明是什么协议,则默认使用全部支持的协议。本文选自《ARP协议全面实战手册——协议详解、攻击与防护》
q Direction(方向):该选项用来指定来源或目的地,默认使用src or dst做为关键字。该选项可以使用的值有:src、dst、src and dst、src or dst。
q Host(s):指定主机地址。若是没有指定,默认使用host关键字。可能使用的值有net、port、host、portrange。
q Logical Operations(逻辑运算):该选项用来指定逻辑运算符。可能使用的值有not、and、or。其中,not(否)具备最高的优先级;or(或)和and(与)具备相同的优先级,运算时从左至右进行。
设置捕捉过滤器的步骤以下所示:
(1)在Wireshark主界面的工具栏中依次选择Capture|Options命令,将显示如图1.5所示的界面。
图1.5 添加过滤条件
在该界面Capture Filter对应的文本框中添加过滤条件,而后单击Start按钮,将开始捕获数据。
【实例1-3】如今要抓取目的或来源地址为192.168.5.9的封包。在图1.5中添加以下所示的条件:
tcp dst port 3128
添加后单击Start按钮,将显示如图1.6所示的界面。
图1.6 地址为192.168.5.9的封包
从该界面能够看到,捕获到的全部数据包都是来源或目的地址为192.168.5.9的数据包。
注意:当使用关键字做为值时,需使用反斜杠“\”。如ether proto \ ip(与关键字ip相同),这样将会以IP协议做为目标。也能够在ip后面使用multicast及broadcast关键字。当用户想排除广播请求时,no broadcast就很是有用。
在图1.5中只能添加Wireshark默认定义好的捕捉过滤器。若是用户指定的捕捉过滤器不存在的话,能够手动添加。在Wireshark工具栏中依次单击Capture|Capture Filters命令,将显示如图1.7所示的界面。
图1.7 Capture Filter
从该界面能够看到该工具默认定义的捕捉过滤器。若是要新建捕捉过滤器,在该界面单击“新建”按钮,默认的过滤器名称和过滤字符串都为new,如图1.7所示。此时用户能够修改默认的名称,而后单击“肯定”按钮。本文选自《ARP协议全面实战手册——协议详解、攻击与防护》