摘自:http://blog.csdn.net/yhwxxx/article/details/5643095
过滤器的区别
捕捉过滤器(CaptureFilters):用于决定将什么样的信息记录在捕捉结果中。需要在开始捕捉前设置。
显示过滤器(DisplayFilters):在捕捉结果中进行详细查找。他们可以在得到捕捉结果后随意修改。
两种过滤器的目的是不同的。
捕捉过滤器是数据经过的第一层过滤器,它用于控制捕捉数据的数量,以避免产生过大的日志文件。
显示过滤器是一种更为强大(复杂)的过滤器。它允许您在日志文件中迅速准确地找到所需要的记录。
两种过滤器使用的语法是完全不同的。
捕捉过滤器
语法: Protocol Direction Host(s) Value LogicalOperations Other expression
例子: tcp dst 10.1.1.1 80 and tcp dst 10.2.2.2 3128
Protocol(协议):
可能的值: ip, arp, tcp,udp...
如果没有特别指明是什么协议,则默认使用所有支持的协议。
Direction(方向):
可能的值: src, dst, src and dst, src or dst
如果没有特别指明来源或目的地,则默认使用“src or dst”作为关键字。
Host(s):
可能的值: net, port, host, portrange
如果没有指定此值,则默认使用”host”关键字。
Logical expressions(逻辑运算符):
英文写法: C语言写法: 含义:
and && 逻辑与
or || 逻辑或
xor ^^ 逻辑异或
not ! 逻辑非
示例:
tcp dst port 3128
显示目的TCP端口为3128的封包。
ip src host 10.1.1.1
显示来源IP地址为10.1.1.1的封包。
host 10.1.2.3
显示目的或来源IP地址为10.1.2.3的封包。
src portrange 2000-2500
显示来源为UDP或TCP,并且端口号在2000至2500范围内的封包。
not imcp
显示除了icmp以外的所有封包。
显示过滤器
语法: Protocol.Str1.Str2 Comparisonoperator Value LogicalOperations Otherexpression
例子: ftp.passive.ip == 10.2.3.4 xor icmp.type
示例:
snmp || dns || icmp
显示SNMP或DNS或ICMP封包。
ip.addr == 10.1.1.1
显示来源或目的IP地址为10.1.1.1的封包。
ip.src != 10.1.2.3 and ip.dst != 10.4.5.6
显示来源不为10.1.2.3并且目的IP不为10.4.5.6的封包。
tcp.port == 25
显示来源或目的TCP端口号为25的封包。
tcp.dstport == 25
显示目的TCP端口号为25的封包。
tcp.flags
显示包含TCP标志的封包。
如果过滤器的语法是正确的,表达式的背景呈绿色。如果呈红色,说明表达式有误。