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抓包分析

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

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java无法获取服务器上路径,JAVA获取服务器路径的步骤

    java无法获取服务器上路径,JAVA获取服务器路径的步骤JAVA获取服务器路径的方法1、在JSF环境中获取到ServletContext:ServletContextsc=(ServletContext)FacesContext.getCurrentInstance().getExternalContext().getContext();2、servlet中获得项目绝对路径StringfilePath=this.getServletConfig…

    2022年7月11日
  • SMTP协议分析[通俗易懂]

    感谢原作者:http://blog.csdn.net/bripengandre/article/details/2191048SMTP协议分析第1章.    SMTP概述1.1. SMTP在邮件通信中的位置SMTP,即简单邮件传送协议,所对应RFC文档为RFC821。同http等多数应用层协议一样,它工作在C/S模式下,用来实现因特网上的邮件传送。SMTP在整个电子邮件通

    2022年4月11日
  • 微信小程序推送模板消息功能_小程序推送消息设置

    微信小程序推送模板消息功能_小程序推送消息设置今天KingYiFan给大家分享一下小程序模板消息推送:根据微信小程序最新机制:2019年10月份微信发布了最新模板消息整改公告,由模板消息更改为订阅消息,模板消息将于2020年1月10日下线,下线后这篇文章将失效。最新微信订阅消息文章已发布,请大家移步:https://blog.csdn.net/weixin_39984161/article/details/103888343公告如下:…

    2022年9月1日
  • Linux的#和$区别[通俗易懂]

    Linux的#和$区别[通俗易懂]【#】代表root权限【$】代表普通用户如果更改了/etc/profile,或~/.bashrc等文档,可以用任何符号来代替它们。linux窗口下的【root@locate~】其中的【~】代

    2022年8月6日
  • springcache清除缓存_什么叫做缓存数据

    springcache清除缓存_什么叫做缓存数据概述从spring3开始,spring开始支持缓存组件,并提供了一系列非常方便的注解。其中,Cache接口定义了基本的增删改查方法,Spring提供了一些默认的实现,比如RedisCa

    2022年8月16日
  • 最近在学习mars老师的视频。按计划的。学习安卓

    转眼之间暑假就过去一大半了。还有14天就开学了。估计再过个一周,同学们就陆续回校了。这个假期借了很多书,虽然没有想象中那么高的效率,学习太多东西,不过还是学了点东西,起码自我感觉还算可以。我是先看了看java的基础知识,一本国外的java面向对象程序设计,说实话书挺好,不过对我不合适,学过c++之后,很多里面讲的思想差不多懂了,然后例子很多,看得有点头疼,应该找一本专门讲java语法的书的。那

    2022年3月8日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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