转自:http://blog.csdn.net/qq_29277155/article/details/52077239

前言

我们都知道,wireshark可以实现本地抓包,同时Wireshark也支持remote packet capture protocol(rpcapd)协议远程抓包,只要在远程主机上安装相应的rpcapd服务例程就可以实现在本地电脑执行wireshark 捕获远程电脑的流量了。但是各种协议的流量非常巨大,如果我们捕获所有协议的流量,那么数小时内,捕获到的流量将到达几百M,甚至几G。硬盘空间很快就被填满了。所以很有必要,只捕获特定的流量或者不捕获某些流量而捕获其他所有的流量。

捕捉过滤器语法

语法:<Protocol>  <Direction>  <Host(s)>  < Value>  < Logical  Operations>   <Other expression>

Protocol(协议): ether,fddi, ip,arp,rarp,decnet,lat, sca,moprc,mopdl, tcp , udp 等,如果没指明协议类型,则默认为捕捉所有支持的协议。

Direction(方向):src, dst,src and dst, src or dst等,如果没指明方向,则默认使用 “src or dst” 作为关键字。

Host(s): net, port, host, portrange等,默认使用”host”关键字,”src 10.1.1.1″与”src host 10.1.1.1″等价。

Logical Operations(逻辑运算):not, and, or 等,否(“not”)具有最高的优先级。或(“or”)和与(“and”)具有相同的优先级,运算时从左至右进行。

常见使用的捕获过滤语句

1.1 只(不)捕获某主机的HTTP流量

host 192.168.5.231 and port 80 and http#只捕获主机192.168.5.231 的http流量。注意如果你的HTTP端口为8080,把80 改为8080。

port 80 and http#捕获所有经过该接口的http流量。注意如果你的HTTP端口为8080,把80 改为8080。

host 192.168.5.231 and not port 80# 捕获主机192.168.5.231除 http 之外的其他所有流量,注意如果你的HTTP端口为8080,把80 改为8080。

not port 80 # 捕获除 http 之外的其他所有流量,注意如果你的HTTP端口为8080,把80 改为8080。

not port 80 and !http## 捕获除 http 之外的其他所有流量,注意如果你的HTTP端口为8080,把80 改为8080。

1.2  只捕获某主机的所有流量

host 192.168.5.231#捕获源目主机均为192.168.5.231

dst 192.168.5.231#捕获目的主机均为192.168.5.231

src 192.168.5.231#捕获来源主机均为192.168.5.231

net 192.168.5.0/24#捕获网段为d192.168.5的所有主机的所有流量

1.3 只捕获某主机的DNS流量

host 192.168.5.231 and port 53 # 只捕获主机192.168.5.231 的dns流量。

src 192.168.5.231 and port 53  #只捕获主机192.168.5.231 对外的dns 的流量。

dst 192.168.5.231 and port 53 #只捕获dns服务器相应主机192.168.5.231的dns流量。

port 53          #捕获接口中的所有主机的dns流量

1.4 只(不)捕获APR流量

host 192.168.5.231 and arp#只捕获主机192.168.5.231 的arp流量。

host 192.168.5.231 and !arp #只捕获主机192.168.5.231 除arp外的所有流量。

arp#捕获接口中的所有arp请求

!arp #捕获接口中所有非arpq请求。

1.5 只捕获特定端口的流量

tcp portrange 8000-9000 an port 80#捕获端口8000-9000之间和80端口的流量

port 5060#捕获sip流量,因为sip的默认端口是5060。举一反三:port 22 #捕获ssh流量

1.6 捕获电子邮件的流量

host 192.168.5.231 and port 25      # 捕获主机192.168.5.231 的POP3协议的流量。

port 25 and portrange 110-143 #因为电子邮件的协议:SMTP、POP3、IMAP4,所以捕获端口的流量。

1.7 捕获vlan 的流量

vlan #捕获所有vlan 的流量

vlan and (host 192.168.5.0 and port 80)#捕获vlan 中主机192.168.5.0 ,前提是有vlan,在wifi中不一定可以捕获到相应的流量,局域网(公司,学校里面的网络应该有vlan)

1.8 捕获 PPPoE 流量

pppoes #捕获所有的pppoes流量
pppoes and (host 192.168.5.231 and port 80)  #捕获主机

Wireshark 捕获过滤器的语法的更多相关文章

  1. 关于wireshark的过滤器规则学习小结

    关于wireshark的过滤器规则学习小结 [前言] 这两天一直在熟悉wireshark的过滤器语法规则,以前也接触过这个工具,但只是学校老师教的如何去选择一个接口进行抓取,以及如何去分析一个包的数据 ...

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

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

  3. Wireshark入门与进阶系列五之常见捕获过滤器

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

  4. wireshark捕获/显示过滤器表达式书写规律说明

    一.说明 1.1 背景说明 对于大多数刚开始接触wireshark的使用者而言,经常是开始的时候时候看到wireshark能把所有数据包都拦截下来觉得强无敌,但是面对一大堆的数据包要问有什么用或者说想 ...

  5. 在Wireshrak中使用过滤器——捕获过滤器

    过滤器可以让你找出你所希望进行分析的数据包.简单来说,一个过滤器就是定义了一定条件,用来包含或者排除数据包的表达式.如果你不希望看到一些数据包,你可以写一恶搞过滤器来屏蔽它们.如果你希望只看到某些数据 ...

  6. 一站式学习Wireshark(十):应用Wireshark显示过滤器分析特定数据流(下)

    介绍 掌握显示过滤器对于网络分析者来说是一项必备的技能.这是一项大海捞针的技巧.学会构建,编辑,保存关键的显示过滤器能够节省数小时的时间. 与捕捉过滤器使用的BPF语法不同,显示过滤器使用的是Wire ...

  7. 一站式学习Wireshark(九):应用Wireshark显示过滤器分析特定数据流(上)

    介绍 掌握显示过滤器对于网络分析者来说是一项必备的技能.这是一项大海捞针的技巧.学会构建,编辑,保存关键的显示过滤器能够节省数小时的时间. 与捕捉过滤器使用的BPF语法不同,显示过滤器使用的是Wire ...

  8. Wireshark数据抓包教程之Wireshark捕获数据

    Wireshark数据抓包教程之Wireshark捕获数据 Wireshark抓包方法 在使用Wireshark捕获以太网数据,可以捕获分析到自己的数据包,也可以去捕获同一局域网内,在知道对方IP地址 ...

  9. 如何用Wireshark捕获USB数据?

    现在越来越多的电子设备采用USB接口进行通讯,通讯标准也在逐步提高.那么,我们就会好奇这些设备是如何工作的?而无论你是一个硬件黑客,业余爱好者或者只是对它有一点兴趣的,USB对我们都是具有挑战性的. ...

随机推荐

  1. NGUI的UISprite动态染色的一种方法

    本文主要参考iwinterice 的 NGUI的UISprite动态染色的一种解决方案 文章. 参考参考,就是既参详又拷贝,-,-||| 相关理论依据,还请去移步 NGUI的UISprite动态染色的 ...

  2. spark提示Caused by: java.lang.ClassCastException: scala.collection.mutable.WrappedArray$ofRef cannot be cast to [Lscala.collection.immutable.Map;

    spark提示Caused by: java.lang.ClassCastException: scala.collection.mutable.WrappedArray$ofRef cannot b ...

  3. ubuntu桌面使用总结

    一.ubuntu12.04 修改系统字体:sudo apt-get install gnome-tweak-tool 关于ubuntu字体,个人习惯记录一下:默认字体:文泉驿微米黑  10桌面字体:文 ...

  4. JavaScript高级 面向对象(12)--引用类型值类型作为参数传递的特性

    说明(2017-4-2 18:27:11): 1. 作为函数的参数,就是将函数的数据拷贝一份,传递给函数的定义中的参数. 函数foo()在调用的时候,做了两件事: (1)函数在调用的时候,首先需要将参 ...

  5. asp.net基于StateServer的二级域名共享session

    备注:亲自试验有效,如果网友有通过下面的教程未实现session共享的,欢迎留言说明你遇到的问题.必有回复. 最近为实现的二级域名共享session纠结好久.网上的很多实现的方法试了都不行,查了很久才 ...

  6. 如何让docker以daemon方式运行/bin/bash

    本文转自:https://segmentfault.com/q/1010000000424935 问题: 我想在docker run的时候,用-d参数运行/bin/bash,然后让这个bash一直跑着 ...

  7. 深入理解IoC和DI

    本文章转载自: https://segmentfault.com/a/1190000005602011 最近在研究php的lumen框架和phalcon框架,这两个框架的底层架构都用到了IoC,DI, ...

  8. 任务调度的几种Java实现

    Timer 使用java.util.Timer是最简单的一种实现任务调度的方法,直接上栗子

  9. Java多线程编程中Future模式的详解<转>

    Java多线程编程中,常用的多线程设计模式包括:Future模式.Master-Worker模式.Guarded Suspeionsion模式.不变模式和生产者-消费者模式等.这篇文章主要讲述Futu ...

  10. sqoop 常见错误以及处理方式

    Oracle: Connection Reset Errors 错误代码 // :: INFO mapred.JobClient: Task Id : attempt_201105261333_000 ...