当前位置:   article > 正文

Wireshark抓包:详解TCP三次握手报文内容_tcp三次握手抓包

tcp三次握手抓包

一、抓包

通过Wireshark这个抓包工具演示下正常能抓到tcp三次握手,能看到的内容是不是和上篇文章tcp三次握手中用图画出来的内容是一样的呢?

现在就抓个包详细得讲解下。先选择我上网的网卡,然后点击这个蓝色的小鲨鱼,开始抓包了。

图片

现在它在开始抓包,我去访问一个页面。这是个https的连接,肯定是基于tcp的。

图片

点击红色按钮暂停。

抓的是tcp协议,过滤下tcp协议的包。按下回车之后,这边就全是tcp的报文了:

图片

因为刚刚都在这一块网卡上抓的,这块网卡可能有很多别的流量,所以抓到的流量不是很纯净。

随意看下某个tcp连接,它的三次握手的过程。

我就看这个,怎么过滤出来这一个连接呢?图片

右击这个包,选择追踪流(追踪整个这一个连接)-tcp流

在这里插入图片描述

将这个连接的所有的数据包都过滤出来了,就看不到其它的杂七杂八的连接。这是指这一个连接的tcp的报文。

图片

二、详解tcp3次握手

第1个报文,请求连接消息:syn:

显示出来这是个syn包:

图片

syn包用来发起连接请求的,客户端向服务器发起连接请求,syn标志位置1。看下标志位置1是什么样子的。双击这个包就可以打开。

看到一个详细的报文显示:

图片

它会把网络中每一层的数据格式都显示在这里:

图片

数据链路层
图片

图片

图片

第2个报文:syn,ack

syn,ack是服务器给客户端返回的确认消息。

图片

双击它,点开看下:

图片

syn,ack包与syn包对比:

图片

图片

第3个报文,确认消息:ack

客户端发给服务器的:图片

图片

seq=1,是因为syn,ack包中确认号是1,表示我希望你收到下一个包的序列号是1。(也就是第一个syn包的序列号加1。)

图片

这个ack是1是因为给我发的syn,ack包中序列号是0,在这个基础上加1,所以这个包的确认号就是1。

图片

第4个,http报文:

三次握手之后,直接是个http的报文:

图片

传输层已经建立完tcp连接,那应用层才能去在它的这个连接基础上面,去发送http的请求。

以上就是tcp3次握手的过程。

三、总结

以上内容是分两次整理的。所以2次抓包的内容有些区别,但是图片上写的技术内容准确无误。学习时应活学活用,切勿死搬硬套。
在这里插入图片描述

获取方式:搜索 小程序:软件测试面试秘籍,随便点击一个 输入:“4183” 自行就能获取…

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/639232
推荐阅读
  

闽ICP备14008679号