Wireshark抓包工具使用以及数据包分析

article/2025/11/7 4:20:50

多年之后,愿你有清风与烈酒,也有人是你的归途。


打开Wireshark抓包工具开始抓包会看到如下展开内容:
这里我是对wlan进行抓包,192.168.2.112是我当前wifi的ip地址。

这里写图片描述

点击某个包,可以查看具体内容,差不多刚好对于五层协议:

  • Frame:物理层的数据帧概况。
  • Ethernet II:数据链路层以太网帧头部信息。
  • Internet Protocol Version 4:互联网层IP包头部信息。
  • Transmission Control Protocol:传输层的数据段头部信息,此处是TCP协议。
    User Datagram Protocol:UDP协议
  • Hypertext Transfer Protocol:应用层的信息,此处是HTTP协议。

一、各层分析:

将上诉Frame ,Ethernet || 等展开可看到具体传输信息:

1、物理层Frame

-Frame 5: 66 bytes on wire (528 bits), 66 bytes captured(捕获) (528 bits) on interface 0   //5号帧,对方发送66字节,实际收到66字节

-Interface id: 0 (\Device\NPF_{37239901-4A63-419C-9693-97957A8232CD})     //接口id为0 

-Encapsulation type: Ethernet (1)  //封装类型

-Arrival Time: Jul  5, 2017 15:14:31.865685000 //捕获日期和时间(中国标准时间)

-[Time shift for this packet: 0.000000000 seconds]
-Epoch Time: 1499238871.865685000 seconds
-[Time delta from previous captured frame: 0.006861000 seconds]  //与前一包时间间隔
-[Time delta from previous displayed frame: 0.006861000 seconds]
-[Time since reference or first frame: 0.613985000 seconds] //#此包与第一帧的时间间隔

-Frame Number: 5                      //帧序号
-Frame Length: 66 bytes (528 bits)    //帧长度
-Capture Length: 66 bytes (528 bits)  //捕获字节长度 
-[Frame is marked: False]             //是否做了标记
-[Frame is ignored: False]            //是否被忽略
-[Protocols in frame: eth:ethertype:ip:tcp] //帧内封装的协议层次结构
-[Coloring Rule Name: HTTP]  //着色标记的协议名称
-[Coloring Rule String: http || tcp.port == 80 || http2] //着色规则显示的字符串

2、数据链路层以太网帧头部信息:

-Ethernet II, Src: Tp-LinkT_f5:3e:62 (c0:61:18:f5:3e:62), Dst: IntelCor_09:65:a5 (58:fb:84:09:65:a5)

- Destination: IntelCor_09:65:a5 (58:fb:84:09:65:a5) //目的MAC地址   
- Source: Tp-LinkT_f5:3e:62 (c0:61:18:f5:3e:62) //源MAC地址(就是我电脑的MAC地址)
- Type: IPv4 (0x0800)   //0x0800表示使用IP协议

这里写图片描述


3、互联网层IP包头部信息:

Internet Protocol Version 4, Src: 192.168.2.112, Dst: 116.211.185.1420100 .... = Version: 4                   //IPV4协议.... 0101 = Header Length: 20 bytes (5)  //包头长度-Differentiated Services Field: 0x00 (DSCP: CS0, ECN: Not-ECT)                               //差分服务字段
-Total Length: 52                      //IP包总长度
-Identification: 0x3849 (14409)        //标志字段
-Flags: 0x02 (Don't Fragment)          //标记字段
-Fragment offset: 0                    //分的偏移量
-Time to live: 128                     //生存期TTL
-Protocol: TCP (6)                     //此包内封装的上层协议为TCP
-Header checksum: 0xd100 [validation disabled] //头部数据的校验和
-[Header checksum status: Unverified] //头部数据校验状态
-Source: 192.168.2.112                //源IP地址
-Destination: 116.211.185.142         //目的IP地址
-[Source GeoIP: Unknown]              //基于地理位置的IP
-[Destination GeoIP: Unknown]

这里写图片描述

这里写图片描述


4、传输层TCP数据段头部信息:

这里写图片描述

这里写图片描述

Transmission Control Protocol, Src Port: 60606, Dst Port: 80, Seq: 0, Len: 0-Source Port: 60606       //源端口号(ecbe)
-Destination Port: 80     //目的端口号(0050)
-[Stream index: 0]        
-[TCP Segment Len: 0]
-Sequence number: 0    (relative sequence number)  //序列号(相对序列号)(四个字节fd 3e dd a2)
-Acknowledgment number: 0   //确认号(四个字节00 00 00 00)
-Header Length: 32 bytes    //头部长度(0x80)
-Flags: 0x002 (SYN)         //TCP标记字段
-Window size value: 8192    //流量控制的窗口大小(20 00)
-[Calculated window size: 8192] 
-Checksum: 0x97ad [unverified]   //数据段的校验和(97 ad)
-[Checksum Status: Unverified]
-Urgent pointer: 0      //紧急指针(00 00)
-Options: (12 bytes), Maximum segment size, No-Operation (NOP), Window scale, No-Operation (NOP), No-Operation (NOP), SACK permitted  //选项(可变长度)

UDP数据段首部:

这里写图片描述

这里写图片描述

User Datagram Protocol, Src Port: 7273, Dst Port: 15030
-Source Port: 7273               //源端口(1c 69)
-Destination Port: 15030         //目的端口(3a 6b)
-Length: 1410                    //长度(05 82)
-Checksum: 0xd729 [unverified]   //校验和(d7 29)
-[Checksum Status: Unverified]
-[Stream index: 6335]

二、Wireshark分析数据包:

1、在过滤器中添加过滤器获得访问百度时的相关信息:

Protocol(协议):
可能的值: ether, fddi, ip, arp, rarp, decnet, lat, sca, moprc, mopdl, tcp and udp.
如果没有特别指明是什么协议,则默认使用所有支持的协议。

Direction(方向):
可能的值: src, dst, src and dst, src or dst
如果没有特别指明来源或目的地,则默认使用 “src or dst” 作为关键字。
例如,”host 10.2.2.2”与”src or dst host 10.2.2.2”是一样的。
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”)具有相同的优先级,运算时从左至右进行。
例如:
“not tcp port 3128 and tcp port 23”与”(not tcp port 3128) and tcp port 23”相同。
“not tcp port 3128 and tcp port 23”与”not (tcp port 3128 and tcp port 23)”不同。

格式为:

ip.addr == www.baidu.com

这里写图片描述

Wireshark的常见几种过滤方法

这里写图片描述
然后可以获得百度的IP地址等信息。

2、过滤出dns信息

在显示过滤框输入dns,过滤出所有dns信息:
这里写图片描述

在该界面220,234帧,是DNS将www.baidu.com解析为一个IP地址的数据包(被称为一个“A”记录)。238帧表示返回一个与主机名相关的IP地址的DNS响应包。如果客户端支持IPv4和IPv6,在该界面将会看到查找一个IPv6地址(被称为“AAAA”记录)。此时,DNS服务器将响应一个IPv6地址或混杂的信息。

说明:238帧是客户端请求百度,通过DNS服务器解析IP地址的过程。标识为“A”记录。


3、过滤出tcp包分析:

在显示过滤框输入:ip.dst==180.97.33.108 or ip.src==180.97.33.108

这里写图片描述

TCP通信流程大致如下:
客户端和服务器之间TCP三次握手(4941、4942、4943帧)—->客户端请求的GET主页面(4944帧)—>服务器收到请求(4945帧)—>发送响应包(4946帧)。

说明:

  • 客户端向服务器发送TCP请求建立连接。标识为SYN

  • 服务器得到请求后向客户端回应确认包的过程。标识为SYN,ACK

  • 客户端回应服务器发送确认包的过程,将于服务器建立连接。标识为ACK

  • 客户端向服务器发送HTTP请求内容的过程。标识为GET

  • 服务器相应客户端请求的过程,收到请求。标识为ACK

  • 4946帧帧是服务器向客户端回应内容的过程。


参考博客:https://my.oschina.net/u/1585857/blog/479306

Wireshark的常见几种过滤方法


http://chatgpt.dhexx.cn/article/SmFwZ6fn.shtml

相关文章

使用wireshark抓网络报文(抓包)并分析其中数据

如何使用wireshark抓网络报文(抓包) 1、 物理层数据帧2、 数据链路层以太网帧头部信息3、 互联网层 IP 包头部信息4、 传输层 TCP 数据段头部信息 本文包内容分析转载自下午茶的芬芳,感谢作者的分享。 网络下载好wireshark打开软件按下开始捕…

wireshark抓包分析数据怎么看 wireshark使用教程

大家都知道Wireshark是非常流行且知名的网络抓包数据分析工具,可以截取各种网络数据包,并显示数据包详细信息,常用于开发测试过程各种问题定位、网络故障排查等情况。但是很多网友不清楚如何使用Wireshark抓包看数据,下面IT备忘录…

Wireshark网络抓包分析

目录 1. 以太网协议头(数据链路层) -- 14byte 2. IP数据头(网络层) -- 20byte 3. ARP抓包分析 3.1 ARP介绍 3.2 报文格式 3.3 抓包分析 3.3.1 先arp -d把arp表清空。 3.3.2 过滤ARP协议的数据包 3.3.3 Ping 目标IP 3.3.4 第一个数据包请求分析 3.3.5 第二个数据包应…

利用python简单分析抓包数据

利用python简单分析抓包数据 wireshark的数据 先读一行看看长啥样 import json data_file rE:\download\data.json with open(data_file,r,encodingutf8) as f:data_list json.loads(f.read())print(data_list[0])用格式化工具看 完整代码&最终结果 import jsondata_…

wireshark抓包分析ping数据包

目录 1.抓取数据包 2.ping request数据包解析 2.1 ICMP 2.2 传输层 2.3 以太帧 2.3 数据链路层 3. ping reply数据包解析 1.抓取数据包 先用管理员权限打开WireShark应用,并在条件过滤栏输入“icmp”。打开cmd,输入:ping www.baidu.co…

Wireshark-----抓包分析

目录 一、Wireshark简介 二、安装与使用 三、抓包分析 1.初次抓包 2.捕获选项设置 3.ARP协议抓包分析 4.IP协议抓包分析 5.TCP协议抓包分析 6.UDP协议抓包分析 7.ICMP协议抓包分析 参考文献 一、Wireshark简介 Wireshark是一款世界范围最广、最好用的网络封包分析软件…

计算机网络——数据包抓取与分析

数据包抓取与分析 目录 一、实验目的 二、实验内容 三、实验环境 四、实验步骤与过程 一、实验目的 学习安装、使用协议分析软件,掌握基本的数据报捕获、过滤和协议的分析技巧,能对抓取数据包进行分析。 二、实验内容 协议分析软件的安装和使用、学…

抓包与分析

(一)作业目的 (1)了解网络通信的分层实现过程,了解不同层次PDU的逐层封装与解封过程; (2)了解数据通信的过程,进一步认知协议的构成与通信过程,进而对TCP/IP分…

Wireshark抓包分析基础

Wireshark抓包分析 (仅作为个人笔记,如有雷同,请联系删除。。) 下载:https://www.wireshark.org/#download 1、设置时间格式:视图–>时间显示格式 2、设置解析:视图–>Name Resoluti…

Java抓包分析四(基于jnetpcap进行抓包)——分析Http请求数据包

在上篇文章中Java抓包分析三(基于jnetpcap进行抓包)——抓取Http请求数据包,我们讲解了TCP三次握手的过程和如何抓取Http数据包,但是我们并没有进行一个数据分析,接下来这篇文章我们将要开始对Http抓取的数据报进行深入…

【HTTP】Fiddler(二) - 使用Fiddler做抓包分析

上文( http://blog.csdn.net/ohmygirl/article/details/17846199 )中已经介绍了Fiddler的原理和软件界面。本文主要针对Fiddler的抓包处理。 Fiddler抓取HTTP请求。 抓包是Fiddler的最基本的应用,以本博客为例,启动Fiddler之后,在浏览器中输入http://blog.csdn.net/ohmygi…

MySQL索引优化实战EXPLAIN解析

先来介绍一下具体的业务场景 当用户登录后,需要查看能够学习的课程,不同的用户看到的课程是不同的,课程存在权限,权限是被下面lesson_user_permissions表控制的,其中sys_user_id 和 lesson_id 作为联合主键 另外还有一…

MySQL索引优化面试题

mysql索引优化熊大注意我们是以innodb为例 创建表sql如下: CREATE TABLE user (id bigint(11) NOT NULL AUTO_INCREMENT COMMENT 主键,age int(10) NOT NULL COMMENT 年龄,name varchar(100) NOT NULL COMMENT 姓名,card_no varchar(64) CHARACTER SET utf8 COLLATE utf8_gen…

【MySQL】深入理解MySQL索引优化器工作原理

本文导读 本文将解读MySQL数据库查询优化器(CBO)的工作原理。简单介绍了MySQL Server的组成,MySQL优化器选择索引额原理以及SQL成本分析,最后通过 select 查询总结整个查询过程。 一、MySQL 优化器是如何选择索引的 下面我们来…

MySQL索引优化与查询优化

1. 索引失效案例 1 全值匹配 2 最佳左前缀法则 3 主键插入顺序 如果 这个数据页已经满了,我们需要把当前 页面分裂 成两个页面,把本页中的一些记录移动到新创建的这个页中。页面分裂和记录移位意味着:性能损耗 !所以如果我们想尽量避免这样…

mysql索引优化系列(一)

一、不常见的索引失效场景 1、举例 还是之前的member会员记录表&#xff0c;往里面插入十万条数据 drop procedure if exists insert_emp; CREATE PROCEDURE insert_emp () BEGINDECLAREi INT;SET i 1;WHILE( i < 100000 ) DOINSERT INTO member ( NAME, age, address, …

MySQL索引优化一

MySQL索引 索引是什么 索引是一种排好序的数据结构&#xff0c;目的是提高查找效率一般来说&#xff0c;索引本身也占内存&#xff0c;因此索引以文件的形式存储在磁盘上平常我们所说的索引一般都是BTree。当然还有hash索引等等 索引优劣势 优势&#xff1a;提高检索效率&a…

MYSQL索引详解和优化

索引的定义 我们在看书的时候&#xff0c;都知道有目录&#xff0c;我们可以通过目录快速的找到书中的内容&#xff0c;而书中的目录就是充当书的索引。在数据库中的索引也是一样的。 索引的定义&#xff1a; 索引是帮助存储引擎快速获取数据的一种数据结构&#xff0c;即数据…

一文彻底搞懂Mysql索引优化

专属小彩蛋&#xff1a;前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站&#xff08;前言 - 床长人工智能教程&#xff09; 目录 一、索引介绍 二、性能分析 三、查询优化 四、排序优化…

MYSQL通过索引进行优化

MYSQL通过索引进行优化 一&#xff1a;什么是索引&#xff1a; 在关系数据库中&#xff0c;索引是一种与表有关的数据库结构&#xff0c;它可以使对应于表的 SQL 语句执行得更快。索引的作用相当于图书的目录&#xff0c;可以根据目录中的页码快速找到所需的内容。 对于数据…