wireshark工具简介

目录

[1 wireshark介绍](#1 wireshark介绍)

[2 wireshark抓包流程](#2 wireshark抓包流程)

[2.1 选择网卡](#2.1 选择网卡)

[2.2 停止抓包](#2.2 停止抓包)

[2.3 保存数据](#2.3 保存数据)

[3 wireshark过滤器设置](#3 wireshark过滤器设置)

[3.1 显示过滤器的设置](#3.1 显示过滤器的设置)

[3.2 抓包过滤器](#3.2 抓包过滤器)

[4 wireshark的封包列表与封包详情](#4 wireshark的封包列表与封包详情)

[4.1 封包列表](#4.1 封包列表)

[4.2 封包详情](#4.2 封包详情)

参考文献


1 wireshark介绍

wireshark是非常流行的网络封包分析软件,功能十分强大。可以截取各种网络封包,显示网络封包的详细信息。wireshark是开源软件,可以放心使用。 可以运行在Windows、Unix、Linux、Mac OS上。

WireShark 主要分为这几个界面:

  1. Display Filter(显示过滤器), 用于过滤

  2. Packet List Pane(封包列表), 显示捕获到的封包, 有源地址和目标地址,端口号。 颜色不同,代表

  3. Packet Details Pane(封包详细信息), 显示封包中的字段

  4. Dissector Pane(16进制数据)

  5. Miscellanous(地址栏,杂项)

2 wireshark抓包流程

2.1 选择网卡

打开 Wireshark 后,会直接进入「网卡选择界面」,WLAN 是我连接无线的网卡,我们抓一下这个网卡的流量,双击网卡名,自动开始抓包。

2.2 停止抓包

点击左上角的「红色按钮」,可以停止抓包。

2.3 保存数据

点击右上角的「文件」,选择「保存」,可以保存抓包的数据。

也可以直接点击工具栏的保存按钮。

3 wireshark过滤器设置

Wireshark提供了两个过滤器:抓包过滤器 和 显示过滤器。两个过滤器的过滤思路不同。

抓包过滤器:重点在动作,需要的包我才抓,不需要的我就不抓。

显示过滤器:重点在数据的展示,包已经抓了,只是不显示出来。

3.1 显示过滤器的设置

可以在显示过滤器中输入过滤条件,来获取过滤后的封包列表显示。

常用的几个过滤条件如下:

1) 协议过滤

比如TCP,只显示TCP协议。

2)IP 过滤

比如 ip.src ==192.168.1.102 显示源地址为192.168.1.102,

ip.dst==192.168.1.102, 目标地址为192.168.1.102

3) 端口过滤

tcp.port ==80, 端口为80的

tcp.srcport == 80, 只显示TCP协议的愿端口为80的。

tcp.port >= 2000 and tcp.port <= 2500 ,端口号在2000至2500范围内的封包。

4)长度和内容的过滤

udp.length < 30 http.content_length <=20,针对长度的过虑

http.request.uri matches "vip" ,匹配http请求中含有vip字段请求信息

5)逻辑运算符为 AND/ OR/NOT/&&/|| /!

6) 特定偏移值的数据包,tcp[20:3] == 47:45:54

3.2 抓包过滤器

抓包过滤器在抓包前使用,所以使用抓包过滤器时,需要先停止抓包,设置完过滤规则后,再开始抓包。停止抓包的前提下,点击工具栏的捕获按钮,点击选项。

在弹出的捕获选项界面,最下方的输入框中输入过滤语句,点击开始即可抓包。

提示:抓包过滤器的输入框,会自动检测语法,绿色代表语法正确,红色代表语法错误。

抓包过滤器过滤有一个基本的语法格式:BPF语法格式:

1)抓取指定IP地址的数据流

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

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

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

2)抓取指定IP地址范围的数据流

net 10.3.0.0/16:抓取网络10.3.0.0上发到/来自所有主机的数据流(16表示长度)

net 10.3.0.0 mask 255.255.0.0:与之前的过滤结果相同

not dst net 10.3.0.0/16:抓取除了发到以10.3开头的IP地址以外的所有数据流

3)抓取指定端口的数据流

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

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

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

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

4)熟悉报文内容的,可以通过各个协议层偏移字段

ip[2:2]==<number>:ip报文大小

Tcp[2:2] > 50 and tcp[2:2] < 100 抓取目的端口为50~100的TCP报文

4 wireshark的封包列表与封包详情

4.1 封包列表

Packet List Pane(数据包列表), 显示捕获到的数据包,每个数据包包含编号,时间戳,源地址,目标地址,协议,长度,以及数据包信息。不同协议的数据包使用了不同的颜色区分显示。

数据包列表是最常用的模块之一,列表中有一些默认显示的列,我们可以添加、删除、修改显示的列。

1)添加显示列

想要在数据列表中显示某一个字段,可以将这个数据字段添加至显示列中。

左键选中想要添加为列的字段,右键选择「应用为列」。

选中字段,按 Ctrl + Shift + I ,也可以实现同样的效果。

添加为列的字段会在数据列表中显示。

2)隐藏显示列

暂时不想查看的列,可以暂时隐藏起来。

在显示列的任意位置右键,取消列名的「勾选」,即可隐藏显示列。

3)删除显示列

不需要查看的字段,可以从显示列中删除。

右键需要删除的列,点击最下方的「Remove this Column」 。

注意:隐藏字段时,在列名栏的任意位置右键即可;而删除字段时,需要在指定的列名位置右键,以防误删。

4)设置时间

数据包列表栏的时间这一列,默认显示格式看起来很不方便,我们可以调整时间的显示格式。

点击工具栏的「视图」,选择「时间显示格式」,设置你喜欢的格式。

5)追踪流

要筛选到特定流,在感兴趣的流/连接的数据包列表中选择TCP、UDP、DCCP、TLS、HTTP、HTTP/2、QUIC或SIP数据包。有两种打开追踪流的界面方法,以TCP为例:

方法一: 选择菜单项【Analyze → Follow → TCP Stream

方法二:选择追踪到的数据→ Follow → TCP Stream

下面展示追踪到流数据,需要进行说明的是:

【1】流内容的显示顺序和它在网络上出现的顺序相同。不可打印的字符被点代替。

【2】从客户端到服务器的流量被标记为红色,而从服务器到客户端的流量被标记为蓝色。这些颜色可以通过下面地方设置

4.2 封包详情

Packet Details Pane(数据包详细信息), 在数据包列表中选择指定数据包,在数据包详细信息中会显示数据包的所有详细信息内容。数据包详细信息面板是最重要的,用来查看协议中的每一个字段。各行信息分别为

(1)Frame: 物理层的数据帧概况

(2)Ethernet II: 数据链路层以太网帧头部信息

(3)Internet Protocol Version 4: 互联网层IP包头部信息

(4)Transmission Control Protocol: 传输层T的数据段头部信息,此处是TCP

(5)Hypertext Transfer Protocol: 应用层的信息,此处是HTTP协议

TCP包的具体内容

从下图可以看到wireshark捕获到的TCP包中的每个字段。

TCP包的具体内容

从下图可以看到wireshark捕获到的TCP包中的每个字段。

参考文献

Wireshark零基础使用教程(超详细)_wireshark抓包新手使用教程-CSDN博客

Wireshark数据包操作_wireshark 数据解析-CSDN博客

wireshark分析数据包:追踪流_wireshark追踪流-CSDN博客

相关推荐
我看就这样吧15 分钟前
使用rpc绕过咸鱼sign校验
网络·网络协议·rpc
万亿少女的梦1682 小时前
基于PHP的校园兼职系统的设计与开发
开发语言·网络·数据库·爬虫·网络安全·php
牛马大师兄2 小时前
网络编程 | UDP套接字通信及编程实现经验教程
linux·网络·网络协议·ubuntu·udp
lingllllove2 小时前
什么是HTTP POST请求?初学者指南与示范
网络·网络协议·http
互联网安全研究院3 小时前
2025年供应链攻击或成企业主要威胁
运维·网络·安全
计算机毕设定制辅导-无忧学长3 小时前
大型系统中 HTTP 的优化与部署
网络·网络协议·http
hgdlip4 小时前
异地IP属地代理业务解析:如何改变IP属地
服务器·网络·tcp/ip
jiuri_12154 小时前
UDP 单播、多播、广播:原理、实践
网络·网络协议·udp
浅念同学5 小时前
网络编程-UDP套接字
网络·网络协议·udp