wireshark测试tcp三次握手与四次挥手

news/2024/5/17 16:14:26/文章来源:https://blog.csdn.net/h295928126/article/details/127613070

wireshark

选择Loopback来监听本地网络。
在这里插入图片描述

监听的内容是分三大模块的:
在这里插入图片描述

封包列表的面板中显示,编号,时间戳,源地址,目标地址,协议,长度,以及封包信息。 你可以看到不同的协议用了不同的颜色显示。你也可以修改这些显示颜色的规则, View ->Coloring Rules.

而封包详情这个面板是我们最重要的,用来查看协议中的每一个字段。各行信息分别为

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

因为是分析TCP,我们重点关注Transmission Control Protocol,下面是TCP的分组结构,其中面板也是显示出这些内容。
在这里插入图片描述

开始操作

在wireshark中监听8082的端口:

tcp.port == 8082

建立一个服务端监听:

nc -nl ip 8082

再启动一个客户端

nc ip 8082

客户端连完再断开就是四次挥手了。

然后就得到下面的分析图:
在这里插入图片描述

三次握手

第一次握手:建立链接。客户端发送链接的请求,发送SYN报文,将Seq设置为0。然后客户端就进入了SYN_SEND状态,等待服务器的确认。
在这里插入图片描述

第二次握手:服务器收到客户端的SYN报文段。需要对这个SYN报文段进行确认,发送ACK报文,并将Ack设置为1。同时,自己也要发送SYN请求信息,将Seq设置为0,。服务器将上述的所有信息一并发送给客户端,此时服务器进入SYN_RECV状态。
在这里插入图片描述

第三次握手:客户端收到服务器的ACK和SYN报文后,进行确认,然后将Ack设置为1,Seq设置为1,向服务器发送ACK报文段,这个报文段发送完毕之后,客户端和服务器都进入了ESTABLISHED状态。就此完成了TCP的三次握手。
在这里插入图片描述

四次挥手

第一次挥手:客户端想服务器发送一个FIN报文段,将设置Seq为1和Ack为1。此时客户端进入FIN_WAIT_1状态。这表示客户端没有数据要发送服务器了,请求关闭连接。
在这里插入图片描述

第二次挥手:服务器收到了客户端发送的FIN报文段,向客户端回一个ACK报文段,Ack设置为2,Seq设置为1;服务器进入了CLOSE_WAIT状态,客户端收到服务器返回的ACK报文之后随即进入FIN_WAIT_2状态。
在这里插入图片描述

第三次挥手:服务器会观察自己是否还有数据没有发送给客户端,如果有,先把数据发送给客户端,再发送FIN报文;如果没有,那么服务器直接发送FIN报文给客户端。请求关闭连接,同时服务器进入LAST_ACK状态。
在这里插入图片描述

第四次挥手:客户端收到服务器发送的FIN报文,向服务器发送ACK报文,将Seq设置为1,Ack设置为2,然后客户端进入TIME_WAIT状态;服务器收到客户端的ACK报文之后就关闭了连接;此时,客户端等待2msl后依然没有收到回复,则证明服务器已正常关闭,客户端也可以关闭连接了。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_410028.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网课搜题接口-掘光者题库系统

网课搜题接口-掘光者题库系统 本平台优点: 多题库查题、独立后台、响应速度快、全网平台可查、功能最全! 1.想要给自己的公众号获得查题接口,只需要两步! 2.题库: 题库:题库后台(点击跳转&am…

Hive与SparkSQL语法差异

一、相同函数差异 1、Spark运行时用到的hash函数,与Hive的哈希算法不同,如果使用hash(),结果和Hive的hash()会有差异 2、Hive和SparkSQL使用grouping sets生成的GROUPING_ID不一致 3、regexp_extract未匹配上的话,在HIVE里返回…

Hive事务表 (Transactional Tables)

文章目录1. 为什么要使用事务表?2. 创建使用事务表1. 为什么要使用事务表? Hive 原本是不支持事务的,也就是不支持 增删改(insert、delete、update)、回滚等 操作的。因为: Hive的核心目标是:将已经存在的结构化数据文…

大学生影视主题网页制作 HTML+CSS+JS仿360影视网站 dreamweaver电影HTML网站制作

HTML实例网页代码, 本实例适合于初学HTML的同学。该实例里面有设置了css的样式设置,有div的样式格局,这个实例比较全面,有助于同学的学习,本文将介绍如何通过从头开始设计个人网站并将其转换为代码的过程来实践设计。 文章目录一、网页介绍一…

加密后的数据如何进行模糊查询

文章目录如何对加密后的数据进行模糊查询?方法1:先解密在查询方法2:在数据库实现加密算法函数第一种思路:在数据库实现加密算法函数第二种思路:对密文数据进行分词组合手机号模糊查询姓名模糊查询姓名精确查询(地址也…

Mysql 事务原理分析

文章目录1、事务1.1、概念1.2、事务控制语句1.3、ACID 特性1.3.1、原子性 A1.3.2、一致性 C1.3.3、隔离性 I1.3.4、持久性 D1.4、undo log1.5、redo log2、隔离级别2.1、隔离级别的分类2.1.1、读未提交 RU2.1.2、读已提交 RC2.1.3、可重复读 RR2.1.4、可串行化 SC2.2、并发读异…

【Linux】UDP、TCP协议

目录 前言 1.UDP协议 1.1. UDP协议段格式 1.2. UDP的特点 1.3. UDP的缓冲区 2. TCP协议 2.1. TCP报文格式 2.2. TCP的确认应答机制 2.3. 流量控制 2.4. 标志位 2.4.1. ACK、SYN 2.4.2. RST(reset) 2.4.3. PSH(push) 2.4.4. URG 2.4.5. FIN 2.5. TCP三次握手 2.…

买阿里云服务器,实操搭建nginx+php+mysql+thinkphp5全过程(2)

书接上回(买阿里云服务器,实操搭建nginx+php+thinkphp5全过程(1)),我的阿里云服务器快要到期了,为了让它发光发热,实现最后的价值,我目标初始化服务器,重新实操搭建nginx+php+thinkphp5全过程。 反正也快过期了,知道IP也没关系了(但是我的淘宝名还是遮一下吧),上…

香港发布有关虚拟资产发展的政策宣言

本宣言由财经事务及库务局(“财库局” )发出,就在香港发展蓬勃的虚拟资产行业和生态圈,阐明政府的政策立场和方针。 愿景和方针 2. 香港是国际金融中心,对全球从事虚拟资产业务的创新人员抱持开放和兼融的态度。我们十分欣赏这些创新人员开展…

学原油期货买什么书(怎么样买原油期货)

想做好期货要看哪些书籍 炒期货要学习的入门知识太多,比如期货法规、期货基础、期货品种、交易规则等等。期货合约的商品品种、交易单位、合约月份、保证金、数量、质量、等级、交货时间、交货地点等条款都是既定的,是标准化的,唯一的变量是…

计算机毕设(附源码)JAVA-SSM计算机组成原理教学系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

python--孪生素数

找出100以内的所有“孪生数” 如果两素数只差为2,这样的两个素数就叫做“孪生数”, 代码如下: def is_prime(num): """判断一个数是否为质数""" for i in range(2, num // 2 1): if num % …

【PCL】输入输出(I/O)

文章目录学习资料点云文件格式写入点云数据到PCD文件从PCD文件读取点云数据点云拼接学习资料 最重要的参考资料是官网:https://pointclouds.org/,Docs是函数手册,Tutorials是代码示例,两者结合学习(shiyong&#xff0…

java毕业设计——基于java+JSP+sqlserver的班主任管理系统设计与实现(毕业论文+程序源码)——班主任管理系统

基于javaJSPsqlserver的班主任管理系统设计与实现(毕业论文程序源码) 大家好,今天给大家介绍基于javaJSPsqlserver的班主任管理系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。 文章目录: 基于javaJ…

windows下搭建mindspore的编译环境

rugwindows 10下安装mindpsore环境,需要visual studio 2019及以上,cmake, python 也可以从上面下载mindspore编译依赖的软件。 visual studioan安装时需注意 然后再安装cmake,git,安装好之后设置检查环境变量,缺失的要补上 系统…

形式主语 it 练习题

4.形式主语 it it 可以代替主语从句,不定式,动名词(非正式用语下) 1.It is a pity how many unhappy marriages there are 2.It is doesn’t interest me to steal the secret formula. 3.It is doesn’t interest me what she c…

【蓝桥杯选拔赛真题25】python输出指定数据 青少年组蓝桥杯python 选拔赛STEMA比赛真题解析

目录 python输出指定数据 一、题目要求 1、编程实现 2、输入输出 3、评分标准

链路状态路由协议OSPF——理解OSPF多区域原理

作者简介:一名在校云计算网络运维学生、每天分享网络运维的学习经验、和学习笔记。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 目录 前言 一.OSPF的多区域 1.OSPF概述 2.生成OSPF多区域的原因 二.OSP…

docker部署MySQL主从

架构说明: 服务器Ip状态192.168.161.20master192.168.161.21slaveMySQL版本:5.7.35 操作系统: centos7.9 一、master部署 1) master配置文件 说明:配置文件讲挂载进容器 [mysqld] binlog_format row innodb_buffer…

Linux学习笔记11 - 进程间通信(IPC)(二)

信号 其源于 UNIX 中的一种的古老方法,其是在软件层次上对中断机制的一种模拟(软中断),是一种异步通信方式。可以直接进行用户空间进程(user process)和内核进程(kernel process)之间的交互,内核进程也可以利用其来通知用户空间进程(user pr…