当前位置:主页 > 查看内容

WireShark实战笔记之TCP三次握手

发布时间:2021-04-26 00:00| 位朋友查看

简介:相关TCP三次握手的知识和面试题总结 https wireshark分析tcp的三次握手 实验环境 抓包分析 实验步骤 相对序列号 参考资料 实验环境 windows10 wiresahrk 抓包分析 实验步骤 1.打开wireshark开始过滤浏览器中访问www.baidu.com。 2.过滤出http 3.选中其中一条……

相关TCP三次握手的知识和面试题总结:
https

实验环境:

windows10
wiresahrk

抓包分析

实验步骤

1.打开wireshark,开始过滤;浏览器中访问www.baidu.com。
2.过滤出http
在这里插入图片描述
3.选中其中一条,右键点击选中 追踪流 > tcp流;
会得到如下图:
在这里插入图片描述

可以发现,这时候已经截获到了tcp三次握手的包,三次握手成功后,第四次才是http连接,说明http连接是建立在三次握手基础上的!

第一次握手分析:

客户端发送一个TCP,标志位为SYN,序列号为0, 代表客户端请求建立连接。 如下图在这里插入图片描述
从中我们还可以得到那些信息?
http 80端口

第二次握手:

服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(syn=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;

服务器发回确认包, 标志位为 SYN,ACK.
将确认序号(Acknowledgement Number)设置为客户的I S N加1以.即0+1=1, 如下图
在这里插入图片描述
第三次握手:

客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。

客户端再次发送确认包(ACK) SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方.并且在数据段放写ISN的+1, 如下图
在这里插入图片描述
就这样通过了TCP三次握手,建立了连接!

相对序列号

本段参考:https://www.jianshu.com/p/e779f12ac809
有人可能对三次握手过程中的 +1可能有疑问,说明如下:

TCP会话的每一端都包含一个32位(bit)的序列号,该序列号被用来跟踪该端发送的数据量。每一个包中都包含序列号,在接收端则通过确认号用来通知发送端数据成功接收
当某个主机开启一个TCP会话时,他的初始序列号是随机的,可能是0和4,294,967,295之间的任意值,然而,像Wireshark这种工具,通常显示的都是相对序列号/确认号,而不是实际序列号/确认号,相对序列号/确认号是和TCP会话的初始序列号相关联的。这是很方便的,因为比起真实序列号/确认号,跟踪更小的相对序列号/确认号会相对容易一些
比如,在“包1”中,最初的相对序列号的值是0,但是最下方面板中的ASCII码显示真实序列号的值是0xf61c6cbe,转化为10进制为4129057982
如果想要关闭相对序列号/确认号,可以选择Wireshark菜单栏中的 Edit -> Preferences ->protocols ->TCP,去掉Relative sequence number后面勾选框中的√即可
在这里插入图片描述
然后就会看到
在这里插入图片描述

参考资料:

《2019 Wireshark基本原理与操作实战视频课程》https://www.bilibili.com/video/BV1fE411Q7xY?from=search&seid=4018939837949226902
《wireshark抓包分析tcp的三次握手详细过程》https://www.jianshu.com/p/e779f12ac809

;原文链接:https://blog.csdn.net/weixin_43742894/article/details/115427405
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!
上一篇:windows内存泄露定位方法 下一篇:没有了

推荐图文


随机推荐