显示过滤器可以保存下来,点击左边书签按钮(带状按钮),选择Save This Filter
显示过滤器也可以做成按钮,点击过滤器最右边的 号按钮,填写好标签即可做成按钮,就显示在 后面。
输入后背景为绿色代表语法正确,背景为红色代表语法错误,背景为黄色代表语法正确但可能得不到想要的结果。一般的当我们使用ip.addr != a.b.c.d时背景会显示为黄色,因为此语句的含义为数据包的源ip或目的ip不等于a.b.c.d,所以对于发给a.b.c.d的包和a.b.c.d的包过滤不掉。
在过滤器输入框上右击,选择Display Filter Expression…即可打开一个对话框,此对话框可辅助生成过滤器。
在Packet Details窗口中想过滤的字段上右击选择Prepare As Filter或Apply As Filter即可快速以此字段作为过滤条件。
基本过滤表达式一条基本的表达式由过滤项、过滤关系、过滤值三项组成。
比如ip.addr == 192.168.1.1,这条表达式中ip.addr是过滤项、==是过滤关系,192.168.1.1是过滤值(整条表达示的意思是找出所有ip协议中源或目标ip、等于、192.168.1.1的数据包)
过滤项初学者感觉的"过滤表达式复杂",最主要就是在这个过滤项上:一是不知道有哪些过滤项,二是不知道过滤项该怎么写。
这两个问题有一个共同的答案-----wireshark的过滤项是"协议" "." "协议字段"的模式。以端口为例,端口出现于tcp协议中,所以有端口这个过滤项且其写法就是tcp.port。
推广到其他协议,如eth、ip、udp、http、telnet、ftp、icmp、snmp等等其他协议都是这么个书写思路。当然wireshark出于缩减长度的原因有些字段没有使用协议规定的名称而是使用简写(比如Destination Port在wireshark中写为dstport)又出于简使用增加了一些协议中没有的字段(比如tcp协议只有源端口和目标端口字段,为了简便使用wireshark增加了tcp.port字段来同时代表这两个)。而且在实际使用时我们输入"协议" "."wireshark就会有支持的字段提示,看下名称就大概知道要用哪个字段了。wireshark支持的全部协议及协议字段可查看。
过滤关系过滤关系就是大于、小于、等于等几种等式关系,我们可以直接看官方给出的表。注意其中有"English"和"C-like"两个字段,这个意思是说"English"和"C-like"这两种写法在wireshark中是等价的、都是可用的。
过滤值过滤值就是设定的过滤项应该满足过滤关系的标准,比如500、5000、50000等等。过滤值的写法一般已经被过滤项和过滤关系设定好了,只是填下自己的期望值就可以了。
复合过滤表达示所谓复合过滤表达示,就是指由多条基本过滤表达式组合而成的表达示。基本过滤表达式的写法还是不变的,复合过滤表达示多出来的东西就只是基本过滤表达示的"连接词"。我们依然直接参照官方给出的表,同样"English"和"C-like"这两个字段还是说明这两种写法在wireshark中是等价的、都是可用的。