实验目的

1、工具介绍

2、主要应用

实验原理

1、网络管理员用来解决网络问题

2、网络安全工程师用来检测安全隐患

3、开发人员用来测试执行情况

4、学习网络协议

实验内容

1、抓取特定数据流

2、显示特定数据流

实验环境描述

实验环境描述

1、学生机与实验室网络直连;

2、VPC1与实验室网络直连;

3、学生机与VPC1物理链路连通;

pc机:Windows7旗舰版

实验步骤

首先打开桌面上的wireshark工具

Wireshark过滤器

抓取特定流量过滤器是在抓包的时候只抓取过滤条件的包,显示过滤器是在有多种流量的情况下,显示具备过滤条件的包

抓取特定数据流

首先在这里建议大家尽量避免使用抓取特定流量过滤。即便多看几个报文,也比漏看一个报文要好。当你抓取了大量报文的时候,用显示过滤(过滤选项也更多)来重点查看某一数据流。

应用抓取特定流量过滤,在 Capture下打开Capture Options设置窗口

这里可以设置抓取特定流量过滤条件,如果你确定过滤条件的语法,直接在Capture Filter区域输入。在输入错误时,Wireshark通过红色背景区域表明无法处理过滤条件。最有可能的情况是,过滤条件中含有输入错误,或是使用了display filter的语法。

点击Capture Filter 按钮查看并选择已保存的过滤条件

1、抓取基于MAC的数据流

当你需要抓取发到/来自某一主机的IPv4或IPv6数据流,可创建基于主机MAC地址的抓包过滤条件。应用MAC地址时,需确保与目标主机处于同一网段。

ether host 6C-C6-7C-B8-68-01:抓取发送到/来自6C-C6-7C-B8-68-01的数据流

ether src 6C-C6-7C-B8-68-01:抓取来自6C-C6-7C-B8-68-01的数据流

ether dst 6C-C6-7C-B8-68-01:抓取发到6C-C6-7C-B8-68-01的数据流

not ether host 6C-C6-7C-B8-68-01:抓取除了发到/来自6C-C6-7C-B8-68-01以外的所有数据流

ether broadcast或ether dst ff:ff:ff:ff:ff:ff:抓取广播报文

ether multicast:抓取多播报文

抓取指定以太网类型的报文:ether proto 0800

抓取指定VLAN:vlan (vlan number)

抓取指定几个VLAN:vlan (vlan number)and vlan (vlan number)

例:ether host 6C-C6-7C-B8-68-01

显示信息发送到/来自6C-58-67-9B-C7-01的数据流

例:ether src host 6C-58-67-9B-C7-01

显示来自6C-58-67-9B-C7-01的数据流

2、抓取基于IP的数据流

如果你的抓包环境下有很多主机正在通讯,可以考虑使用所观察主机的IP地址来进行过滤。以下为IP地址抓包过滤示例:

host 172.16.1.69:抓取发到/来自172.16.1.69的数据流

host 2406:da00:ff00::6b16:f02d:抓取发到/来自IPv6地址2406:da00:ff00::6b16:f02d的数据流

not host 172.16.1.69:抓取除了发到/来自172.16.1.69以外的所有数据流

src host 172.16.1.69:抓取来自172.16.1.69的数据流

dst host 172.16.1.69:抓取发到172.16.1.69的数据流

host 172.16.1.69 or 172.16.1.70:抓取发到/来自172.16.1.69以及与通讯的数据流,抓取发到/来自192.168.11.254以及与通讯的所有数据流

例: src host 172.16.1.69

显示信息,所有的包都是来自172.16.1.69的数据流

3、抓取基于端口的数据流

你可能需要查看基于一个或几个应用的数据流。抓包过滤器语法无法识别应用名,因此需要根据端口号来定义应用。通过目标应用的TCP或UDP端口号,将不相关的报文过滤掉。

port 53:抓取发到/来自端口53的UDP/TCP数据流(典型是DNS数据流)

not port 53:抓取除了发到/来自端口53以外的UDP/TCP数据流

port 80:抓取发到/来自端口80的UDP/TCP数据流(典型是HTTP数据流)

udp port 67:抓取发到/来自端口67的UDP数据流(典型是DHCP据流)

tcp port 21:抓取发到/来自端口21的TCP数据流(典型是FTP命令通道)

portrange 1-80:抓取发到/来自端口1-80的所有UDP/TCP数据流

tcp portrange 1-80:抓取发到/来自端口1-80的所有TCP数据流

(可自行尝试)

当你需要抓取多个不连续端口号的数据流,将它们通过逻辑符号连接起来。

port 20 or port 21:抓取发到/来自端口20或21的UDP/TCP数据流(典型是FTP数据和命令端口)

host 10.3.1.1 and port 80:抓取发到/来自10.3.1.1端口80的数据流

host 10.3.1.1 and not port 80:抓取发到/来自10.3.1.1除了端口80以外的数据流

udp src port 68 and udp dst port 67:抓取从端口68到端口67的所有UDP数据流(典型是从DHCP客户端到DHCP服务器)

udp src port 67 and udp dst port 68:抓取从端口67到端口68的所有UDP数据流(典型是从DHCP服务器到DHCP客户端)

抓取TCP连接的开始(SYN)和结束(FIN)报文,配置tcp[tcpflags] & (tcp-syn|tcp-fin)!=0

抓取所有RST(Reset)标志位为1的TCP报文,配置tcp[tcpflags] & (tcp-rst)!=0

less (length):抓取小于等于某一长度的报文,等同于len <=(length)

greater (length):抓取大于等于某一长度的报文,等同于len >=(length)

4、抓取基于指定协议的数据流

你可能需要查看基于一个或几个协议的数据流。通过目标应用的TCP、UDP或在TCP、UDP后加上端口号,将不相关的报文过滤掉。

icmp:抓取发到/来自icmp的数据流

port 53:抓取发到/来自端口53的UDP/TCP数据流(典型是DNS数据流)

not port 53:抓取除了发到/来自端口53以外的UDP/TCP数据流

port 80:抓取发到/来自端口80的UDP/TCP数据流(典型是HTTP数据流)

udp port 67:抓取发到/来自端口67的UDP数据流(典型是DHCP据流)

tcp port 21:抓取发到/来自端口21的TCP数据流(典型是FTP命令通道)

portrange 1-80:抓取发到/来自端口1-80的所有UDP/TCP数据流

tcp portrange 1-80:抓取发到/来自端口1-80的所有TCP数据流

显示特定数据流

显示过滤器可基于协议,应用,域名,或字符,对大小写敏感。绝大多数简单的显示过滤器由小写字母组成。与捕捉过滤器使用的BPF语法不同,显示过滤器使用的是Wireshark特定的格式。除了某些特例之外,Wireshark显示过滤器和捕捉过滤器有很大的区别。

5、基于IP地址或主机报文过滤

对于IPv4数据流,我们使用字段名ip.src,ip.dst,ip.addr;对于IPv6数据流,使用ipv6.src,ipv6.dst,ipv6.host以及ipv6.addr。

ip.addr==172.16.1.69显示在IP源地址字段或IP目的地址字段包含172.16.1.69的帧。

ip.src==172.16.1.69显示所有来自172.16.1.69的数据流。

ip.dst==172.16.1.69显示所有发往172.16.1.69的数据流

!ip.addr==172.16.1.69显示除了在IP源地址字段或IP目的地址字段包含172.16.1.69以外的帧

例如在filter栏输入ip.dst ==172.16.1.79

显示信息,所有发往172.16.1.79的数据流

ip.src == 172.16.1.79 and ip.dst ==172.16.1.79 过滤源IP为172.16.1.79,目的IP为172.16.1.255的通信数据包

显示信息,源IP172.16.1.79,目的IP172.16.1.255的数据包

6、基于端口号的过滤

tcp.port == 80过滤tcp的80端口

协议过滤器

arp:显示所有包括ARP请求和回复在内的所有ARP数据流。

ip:显示内含IPv4头在内的(如ICMP目的地址不可达报文,在ICMP报文头之后返回到来方向的IPv4头)IP数据流。

ipv6:显示所有IPv6数据流,包括内含IPv6报文头的IPv4报文,如6to4,Teredo,以及ISATAP数据流。

tcp:显示所有基于TCP的数据流。

7、字符过滤器:

tcp.analysis.flags:显示所有包含TCP分析标识的所有报文,包括报文丢失,重传,或零窗口标识。

tcp.analysis,zero_window:显示含有表明发送方的接收缓存用完标识的报文

例tcp.flags.syn == 1:过滤三次握手fsyn=1的数据包

8、显示运算符

通过扩展过滤条件可查找某一域值,Wireshark针对此功能支持数字比较运算符。我整理出来几种类型,这里就不一一给大家查看结果了,

==或eq

例如:ip.src == 10.2.2.2显示所有源地址为10.2.2.2的IPv4数据流

!=或ne

例如:tcp.srcport != 80显示源端口除了80以外的所有TCP数据流

或gt

例如:frame.time_relative > 1 显示距前一个报文到达时间相差1秒的报文

<或lt

例如:tcp.window_size < 1460 显示当TCP接收窗口小于1460字节时的报文

=或ge

例如:dns.count.answers >= 10 显示包含10个以上answer的DNS响应报文

<=或le

例如:ip.ttl <= 10 显示IP报文中Time to Live字段小于等于10的报文

contains

例如:http contains “GET” 显示所有HTTP客户端发送给HTTP服务器的GET请求

运算符两边不用留空格。ip.src == 10.2.2.2与ip.src==10.2.2.2的效果是相同的。

Wireshark教程之过滤器设置的更多相关文章

  1. wireshark常用的过滤器设置

     过滤源ip.目的ip.在wireshark的过滤规则框Filter中输入过滤条件.如查找目的地址为192.168.101.8的包,ip.dst==192.168.101.8:查找源地址为ip.src ...

  2. wireshark教程

    Wireshark世界上最流行的网络分析工具. 这个强大的工具能够捕捉网络中的数据,并为用户提供关于网络和上层协议的各种信息.与非常多其它网络工具一样.Wireshark也使用pcap network ...

  3. wireshark 抓包过滤器使用

    目录 wireshark 抓包过滤器 一.抓包过滤器 二.显示过滤器 整理自陈鑫杰老师的wireshark教程课 wireshark 抓包过滤器 过滤器分为抓包过滤器和显示过滤器,抓包过滤器会将不满足 ...

  4. Wireshark工具创建过滤器的方式

    Wireshark工具创建过滤器的方式  [实例1-3]现在要抓取目的或来源地址为192.168.5.9的封包.在图1.5中添加如下所示的条件: tcp dst port 3128 添加后单击Star ...

  5. phpmyadmin安装教程及配置设置

    phpmyadmin安装教程及配置设置 | 浏览:20304 | 更新:2013-11-07 09:50 1.一般网上下载到的phpmyadmin是一个压缩包,我们将其释放到htdocs目录中,例如h ...

  6. XamarinAndroid组件教程RecylerView适配器设置动画示例

    XamarinAndroid组件教程RecylerView适配器设置动画示例 [示例1-3]下面将在RecylerView的子元素进行滚动时,使用适配器动画.具体的操作步骤如下: (1)创建一个名为R ...

  7. XamarinAndroid组件教程RecylerView适配器设置动画

    XamarinAndroid组件教程RecylerView适配器设置动画 本小节将讲解动画相关设置,如动画的时长.插值器以及复合动画等. 1.设置动画时长 设置动画持续的时间可以使用Animation ...

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

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

  9. vue教程2-06 过滤器

    vue教程2-06 过滤器 过滤器: vue提供过滤器: capitalize uppercase currency.... <div id="box"> {{msg| ...

随机推荐

  1. 巧用 Base62 解决字段太短的问题

    最近银联一纸 259 号改造通知,所有支付机构开始改造支付交易,上传终端信息. 不知道其他支付机构的小伙伴针对这次改造是否开始了? 由于这次银联给的时间非常少,我们这边改动涉及到相关上游一起改造,所以 ...

  2. vue开源项目有点全

    目录 UI组件 开发框架 实用库 服务端 辅助工具 应用实例 Demo示例 UI组件 element ★31142 - 饿了么出品的Vue2的web UI工具套件 Vux ★14104- 基于Vue和 ...

  3. linux文件详细说明与inode编号

    目录 一:文件类型概念说明 1.文件详细信息详解 2.inode编号 一:文件类型概念说明 1.文件详细信息详解 文件详细信息编号 ls - lhi /etc/ 134319695 -rw------ ...

  4. 人口信息普查系统-JavaWeb-五

    今天分享人口普查系统删除查询前端代码 <%@ page language="java" contentType="text/html; UTF-8" pa ...

  5. 解决matplotlib中文不显示问题

    在导入库时添加如下几行代码 from pylab import mpl mpl.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体 mpl.rcPa ...

  6. AT2347 [ARC070C] NarrowRectangles

    首先不难看出一个暴力的 \(dp\) 解法,考虑令 \(dp_{i, j}\) 表示考虑完前 \(i\) 个矩形,第 \(i\) 个矩形左端点在 \(j\) 时所需要的最小花费. 不难有转移: \[d ...

  7. C语言中数组长度不能用变量定义吗?

    C语言里,所有变量空间都是在程序运行之初向系统申请的,包括指针,除了一些动态申请方式如malloc函数.没有申请的空间系统是不允许读写的.那么如果一个数组大小是变量定义,则在程序运行前不能确定数组大小 ...

  8. 定制博客CSS样式

    首先你需要添加页面CSS代码

  9. NSTimer、CADisplayLink、GCD 三种定时器的用法 —— 昉

    在软件开发过程中,我们常常需要在某个时间后执行某个方法,或者是按照某个周期一直执行某个方法.在这个时候,我们就需要用到定时器. 在iOS中有很多方法完成定时器的任务,例如 NSTimer.CADisp ...

  10. pytorch学习

    1 torch.hub torch.hub是一个包含计算机视觉和自然语言处理领域的诸多经典模型调用中心API 我没有运行成功代码 https://blog.csdn.net/qq_38410428/a ...