WireShark抓包分析

WireShark抓包分析简述:本文介绍了抓包数据含义,有TCP报文、Http报文、DNS报文。如有错误,欢迎指正。1、TCP报文TCP:(TCP是面向连接的通信协议,通过三次握手建立连接,通讯完成时要拆除连接,由于TCP是面向连接的所以只能用于点对点的通讯)源IP地址:发送包的IP地址;目的IP地址:接收包的IP地址;源端口:源系统上的连接的端口;目的端口:目的系统上的连接的端口。T

大家好,又见面了,我是你们的朋友全栈君。

简述:本文介绍了抓包数据含义,有TCP报文、Http报文、DNS报文。如有错误,欢迎指正。

1、TCP报文

TCP:(TCP是面向连接的通信协议,通过三次握手建立连接,通讯完成时要拆除连接,由于TCP 是面向连接的所以只能用于点对点的通讯)源IP地址:发送包的IP地址;目的IP地址:接收包的IP地址;源端口:源系统上的连接的端口;目的端口:目的系统上的连接的端口。  TCP是因特网中的传输层协议,使用三次握手协议建立连接。当主动方发出SYN连接请求后,等待对方回答SYN,ACK。这种建立连接的方法可以防止产生错误连接,TCP使用的流量控制协议是可变大小的滑动窗口协议。第一次握手:建立连接时,客户端发送SYN包(SEQ=x)到服务器,并进入SYN_SEND状态,等待服务器确认。第二次握手:服务器收到SYN包,必须确认客户的SYN(ack=x+1),同时自己也送一个SYN包(SEQ=y),即SYN+ACK包,此时服务器进入SYN_RECV状态。第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入Established状态,完成三次握手。

WireShark抓包分析

ACK:为TCP报文段首部中的“ACK字段”,置1时该报文段为确认报文段。
ack:为TCP报文段首部中“确认号字段”的具体数值。ack=x+1说明服务器希望客户端下次发来的报文段的第一个数据字节为序号=x+1的字节;ack=y+1说明客户端希望服务器下次发来的报文段的第一个数据字节为序号=y+1的字节

1> 封包详细信息

WireShark抓包分析

A. 第一行,Frame 36838 指的是要发送的数据块,其中,所抓帧的序号为36838,捕获字节数等于传送字节数:70字节;

B. 第二行,以太网,有线局域网技术,是数据链路层。源Mac地址为88:5d:90:00:00:25;目标Mac地址为00:25:22:b5:b9:92;

C. 第三行,IPV4协议,也称网际协议,是网络层;源IP地址为192.168.21.175;目标IP地址为192.168.21.156;

D. 第四行,TCP协议,也称传输控制协议,是传输层;源端口(10086);目标端口(50132);序列号(1361);ACK是TCP数据包首部中的确认标志,对已接收到的TCP报文进行确认,值为1表示确认号有效;长度为16;

E. 第五行,数据共有16字节

2> Frame信息分析

WireShark抓包分析

A. Arrival Time:到达时间,值为Jan 14, 2017 08:52:56.239204000

B. EPoch Time:信息出现时间,值为1484355176.239204000秒

C. [ Time delta from previous captured frame: 0.001472000 seconds] :与之前捕获的数据帧时间差:0.001472000秒;

     [Time delta from previous displayed frame: 0.001472000 seconds]:与之前显示的帧时间差: 0.001472000秒;

     [Time since reference or first frame: 1278.276505000 seconds]:距参考帧或第一帧的时间差:1278.276505000秒;

D. Frame Number: 36838,帧编号为36838;

E. Frame Length: 70 bytes (560 bits),帧长度为70字节;

     Capture Length: 70 bytes (560 bits),捕获到的长度为70字节;

F. [Frame is marked: False],帧标记:无;

     [Frame is ignored: False],帧被忽略:无;

G. [Protocols in frame: eth:ip:tcp:data],协议帧:eth(以太网)、IP、tcp、data

H. [Coloring Rule Name: TCP],色彩规则名称:TCP;

     [Coloring Rule String: tcp],色彩规则字符串:TCP;

3> EthernetⅡ信息分析

WireShark抓包分析

A. Destination: AsrockIn_b5:b9:92 (00:25:22:b5:b9:92),目标Mac地址为00:25:22:b5:b9:92

B. Source: 88:5d:90:00:00:25 (88:5d:90:00:00:25),源Mac地址为88:5d:90:00:00:25

C. Type: IP (0x0800),类型是IP数据包

4> IPv4 协议信息分析

WireShark抓包分析

A. Version: 4,IP协议版本为IPv4;

     Header length: 20 bytes,头部数据长度为20字节;

B. Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00: Not-ECT (Not ECN-Capable Transport)),区分的服务领域:0x00 (默认的是DSCP:0x00);

C. Flags: 0x02 (Don’t Fragment),不支持分组;

     Fragment offset: 0,分组偏移量为0; 

D. Time to live: 64,TTL,生存时间为64,TTL通常表示包在被丢弃前最多能经过的路由器个数,当数据包传输到一个路由器之后,TTL就自动减1,如果减到0了还没有传送到目标主机,那么就自动丢失。

E. Header checksum: 0xcebd [correct],头部校验和

F. Source: 192.168.21.175 (192.168.21.175),源IP地址为192.168.21.175;

     Destination: 192.168.21.156 (192.168.21.156),目标IP地址为192.168.21.156;

5> Trasmission Control Protocol信息分析

其中,对应的TCP首部的数据信息

WireShark抓包分析

A. 端口号,数据传输的16位源端口号和16位目标端口号(用于寻找发端和收端应用进程);

B. 相对序列号,该数据包的相对序列号为1361(此序列号用来确定传送数据的正确位置,且序列号用来侦测丢失的包);下一个数据包的序列号是1377;

C. Acknowledgment number是32位确认序列号,值等于1表示数据包收到,确认有效;

D. 手动的数据包的头字节长度是20字节;

E. Flags,含6种标志;ACK:确认序号有效;SYN:同步序号用来发起一个连接;FIN:发端完成发送任务;RST:重新连接;PSH:接收方应该尽快将这个报文段交给应用层;URG:紧急指针(urgentpointer)有效;

F. window,TCP的流量控制由连接的每一端通过声明的窗口大小来提供。窗口大小为字节数,起始于确认序号字段指明的值,这个值是接收端正期望接收的字节。窗口大小是一个16bit字段,因而窗口大小最大为65536字节,上面显示窗口大小为1825字节;

G. Checksum,16位校验和,检验和覆盖了整个的TCP报文段,由发端计算和存储,并由收端进行验证;

6> Data信息分析

WireShark抓包分析

A.  TCP 报文段中的数据(该部分是可选的),长度为16字节;

2、Http报文

链路层的信息上是以帧的形式进行传输的,帧封装了应用层、传输层、网络层的数据。而Wireshark抓到的就是链路层的一帧;

1> 封装包详细信息

WireShark抓包分析

A. 第一行,Frame 12411 指的是要发送的数据块,其中,所抓帧的序号为12411,捕获字节数等于传送字节数:233字节;

B. 第二行,以太网,有线局域网技术,是数据链路层。源Mac地址为24:69:68:6b:78:96;目标Mac地址为00:25:22:b5:b9:92;

C. 第三行,IPV4协议,也称网际协议,是网络层;源IP地址为220.181.57.234;目标IP地址为192.168.21.156;

D. 第四行,TCP协议,也称传输控制协议,是传输层;源端口(80);目标端口(53985);序列号(1);ACK是TCP数据包首部中的确认标志,对已接收到的TCP报文进行确认,值为1表示确认号有效;长度为179;

E. 第五行,Http协议,也称超文本传输协议,是应用层

2> Http请求报文分析

WireShark抓包分析

报文分析:

WireShark抓包分析

在抓包分析过程中还发现了另外一些http请求报文中所特有的首部字段名,比如下面http请求报文中橙黄色首部字段名:

WireShark抓包分析

3> Http响应报文分析

WireShark抓包分析

报文分析:

WireShark抓包分析

3、 DNS报文

1> 封包详细信息

WireShark抓包分析

A. 第一行,Frame 12237 指的是要发送的数据块,其中,所抓帧的序号为12237,捕获字节数等于传送字节数:133字节;

B. 第二行,以太网,有线局域网技术,是数据链路层。源Mac地址为24:69:68:6b:78:96;目标Mac地址为00:25:22:b5:b9:92;

C. 第三行,IPV4协议,也称网际协议,是网络层;源IP地址为192.168.211.254;目标IP地址为192.168.211.84;

D. 第四行,UDP协议,是传输层;源端口domain(53);目标端口(65219);

E. 第五行,DNS协议,应用层

2> DNS 查询报文

WireShark抓包分析

报文分析:

WireShark抓包分析

3> DNS响应报文

WireShark抓包分析

报文分析:

WireShark抓包分析

4、Ping

WireShark抓包分析

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/131096.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 前端人员该怎么面试 经典Angular面试题有哪些[通俗易懂]

    前端人员该怎么面试 经典Angular面试题有哪些[通俗易懂]前端人员该怎么面试?经典Angular面试题有哪些?AngularJS是一个JavaScript框架,是一个以JavaScript编写的库。它可通过1、解释Angular2应用程序的生命周期hooks是什么?Angular2组件/指令具有生命周期事件,是由@angular/core管理的。@angular/core会创建组件,渲染它,创建并呈现它的后代。当@angular/core的数据绑定…

    2022年10月17日
  • 银河麒麟安装windows虚拟机_中标麒麟安装vmtools

    银河麒麟安装windows虚拟机_中标麒麟安装vmtools下载系统:http://download.cs2c.com.cn/neokylin/desktop/releases/6.0/x86_64/iso/安装系统:1.新建虚拟机,选择典型,下一步2.稍后安装操作系统,下一步3.选择Linux系统版本为其他Linux3.x内核,下一步4.设置磁盘大小为…

  • 较完整的 bean生命周期[通俗易懂]

    较完整的 bean生命周期[通俗易懂]首先需要说明的是,Bean的生命周期主要指的是singletonbean,标签的scope默认就是singleton。对prototypebean来说,当用户getBean获得prototypebean的实例后,IOC容器就不再对当前实例进行管理,而是把管理权交由用户,此后再getBean生成的是新的实例。普通JavaBean和SpringBean普通java对象就是new出来,然后不再使用的时候通过垃圾回收机制进行回收; 而springBean是由spring容器来控制的,并且..

  • django url标签_未指定url怎么解决

    django url标签_未指定url怎么解决前言当我们访问网页的时候,后台返回列表中有n条数据,此时我们会使用分页,比如一页只展示10条,但是我们访问第一页的时候大多数情况下,都会给url一个默认值,访问的时候直接展示第一页数据案例我们的

  • Android 9.0 WebView无法加载页面报错 net:ERR_CLEARTEXT_NOT_PERMITTED

    Android 9.0 WebView无法加载页面报错 net:ERR_CLEARTEXT_NOT_PERMITTED

  • 012路规律怎么看_五星012路的判断

    012路规律怎么看_五星012路的判断堆题目链接将一系列给定数字顺序插入一个初始为空的小顶堆H[]。随后判断一系列相关命题是否为真。命题分下列几种:x is the root:x是根结点;x and y are siblings:x和y是兄弟结点;x is the parent of y:x是y的父结点;x is a child of y:x是y的一个子结点。输入格式:每组测试第1行包含2个正整数N(≤ 1000)和M(≤ 20),分别是插入元素的个数、以及需要判断的命题数。下一行给出区间[−10000,10000]内的N个要被

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号