1.初次抓包

双击所需网关即可进行抓包;

上图中所显示的信息从上到下分布在 3 个面板中,每个面板包含的信息含义如下:

  • Packet List 面板:上面部分,显示 Wireshark 捕获到的所有数据包,这些数据包从 1 进行顺序编号。
  • Packet Details 面板:中间部分,显示一个数据包的详细内容信息,并且以层次结构进行显示。这些层次结构默认是折叠起来的,用户可以展开查看详细的内容信息。
  • Packet Bytes 面板:下面部分,显示一个数据包未经处理的原始样子,数据是以十六进制和 ASCII 格式进行显示。

在Packet Details面板中:

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

2.捕获选项设置

点击 捕获-->选项,取消勾选“在所有接口上使用混杂模式”,选择自己需要的网卡,例如WLAN,点击确定即可;进行此步骤的操作是为了方便后面的抓包分析,排除干扰项,此步骤可以根据自己需要选择做或者不做

3.ARP协议抓包分析

ARP (Address Resolution Protocol)协议,即地址解析协议。该协议的功能就是将IP地址解析成MAC地址。
首先在Wireshark中进行过滤器arp筛选;

 然后在cmd中,使用ping命令,ping一个ip地址,建议ping同一局域网下的ip ,这里就ping www.douyin.com ,如下:

 Wireshark中arp协议的解析:

4.IP协议抓包分析


互联网协议IP是Internet Protocol的缩写,中文缩写为“网协”。IP协议是位于OSI模型中第三层的协议,其主要目的就是使得网络间能够互联通信。前面介绍了ARP协议,该协议用在第二层处理单一网络中的通信。与其类似,第三层则负责跨网络通信的地址。在这层上工作的不止一个协议,但是最普遍的就是互联网协议(IP)。
首先在Wireshark中启动抓包;捕获IP协议包的方法有多种,打开一个网页,或者使用ping命令,这里依旧ping www.douyin.com  如下所示:

在Wireshark中已经捕获到了很多包,我们使用过滤器输入ip.addr == 112.19.197.277 进行筛选即可;

ip协议抓包分析

其中Internet Control Message Protocol 表示ICMP协议包信息。

5.TCP协议抓包分析


TCP (Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于P的传输层协议。它的主要目的是为数据提供可靠的端到端传输。TCP在RFC793中定义,在OSI模型中的第四层工作。它能够处理数据的顺序和错误恢复,并且最终保证数据能够到达其应到达的地方。但是,该协议的过程比较复杂。
TCP是面向连接的通信协议。在通信过程中,通过三次握手建立连接。通信结束后,还需要断开连接。如果在发送数据包时,没有被正确发送到目的地,将会重新发送数据包。

TCP三次握手

1.第一次握手
第一次握手建立连接时,客户端向服务器发送SYN报文(Seq=x,SYN=1),并进入SYN_SENT状态,等待服务器确认。
2.第二次握手
第二次握手实际上是分两部分来完成的,即SYN+ACK(请求和确认)报文。

(1)服务器收到了客户端的请求,向客户端回复一个确认信息(Ack=x+1)。
(2)服务器再向客户端发送一个SYN包(Seq=y)建立连接的请求,此时服务器进入SYN_RECV状态。

3.第三次握手
第三次握手客户端收到服务器的回复(SYN+ACK报文)。此时,客户端也要向服务器发送确认包(ACK)。此包发送完毕客户端和服务器进入ESTABLISHED 状态,完成三次握手。此时就可以进行数据传输了。
 

TCP四次挥手 

进行抓包,首先启动Wireshark,如果此时没捕获到任何数据包,可以在浏览器上访问一个网站页面。如进入百度首页,点击新闻,打开页面,然后再关闭页面。Wireshark中此时会得到很多数据,利用过滤器输入http过滤。

 

 选中一个http记录,右键—>追踪—>tcp流,即可看到一个完整的tcp三次握手。

完整的TCP三次握手如下: 

TCP协议抓包包分析:

第二次与第三次握手字段与第一次基本相同,主要是Ack与Seq的值 

TCP的四次挥手与三次握手分析过程进本相同,可以通过过滤器tcp.flags.fin==1寻找挥手数据包如下:

查看端口号有来有回的数据包,之后通过过滤器tcp.port==50788筛选出完整的四次挥手过程。

6.UDP协议抓包分析


UDP是User Datagram Protocol (用户数据报协议)的简称。它是OSI七层模型中一种无连接的传输层协议,提供面向事务的简单的不可靠信息传送服务。
UDP协议就是一种无连接的协议。该协议用来支撑那些需要在计算机之间传输数据的网络应用,包括网络视频会议系统在内的众多客户/服务器模式的网络应用。
UDP协议的主要作用就是将网络数据流量压缩成数据包的形式。一个典型的数据包就是一个二进制数据的传输单位。每一个数据包的前8字节用来包含包头信息,剩余字节则用来包含具体的传输数据。
进行抓包,启动Wireshark,登录qq程序,或者其他方法都可以可以捕获到许多UDP包,通过过滤器输入udp进行过滤即可,分析如下:

 

7.ICMP协议抓包分析


 ICMP (Internet Control Message Protocol,网际报文控制协议)是Internet 协议族的核心协议之一,它主要用在网络计算机的操作系统中发送出错信息。例如,提示请求的服务不可用、主机或者路由不可达。ICMP协议依靠IP协议来完成其任务,通常也是P协议的一个集成部分。ICMP协议和TCP或UDP协议的目的不同,它一般不用来在端系统之间传送数据。它通常不被用户网络程序直接使用,或者是像Ping 和 tracert这样的诊断程序。

进行抓包,启动Wireshark,通过cmd命令ping一个ip,如ping www.douyin.com。

回到Wireshark中利用过滤器输入icmp进行筛选即可,分析如下:

 

Wireshark——过滤器设置

本文转载于:https://blog.csdn.net/m0_51260564/article/details/127210111 

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐