使用wireshark抓包并分析TCP三次握手

一、实验过程

1、TCP包抓取及分析过程

①确认使用的协议,使用HTTP服务。选择https://www.baidu.com/作为目标地址。
②启动Wireshark软件,点击开始抓包后。在浏览器地址输入https://www.baidu.com/
③在Wireshark软件中使用过滤器,添加本机IP地址和TCP协议过滤条件

2、开始实验

①获取IP双方IP地址(便于过滤)
获取本机IP地址
在这里插入图片描述
获取https://www.baidu.com/的IP地址
在这里插入图片描述
②在工具栏上的Filter对话框中填入过滤条件:
在这里插入图片描述
获取的数据报文如下,红框内为访问百度的TCP三次握手过程
在这里插入图片描述

二、概念介绍

TCP报文格式
在这里插入图片描述
在这里插入图片描述
三次握手过程
在这里插入图片描述
wireshark窗口简介
在这里插入图片描述

三、根据报文分析TCP的三次握手过程

①第一次握手

192.168.199.233-------->14.215.177.39

(1)数据链路层报文
在这里插入图片描述
(2)网络层
在这里插入图片描述
(3)传输层
①源端口和目的端口
在这里插入图片描述
②窗口大小:如下图所示,窗口大小Windows size value为64240,表示源主机最大能接收64240字节。
在这里插入图片描述
③校验和(16bit):如下图所示,校验和Checksum为0x20cf,包含TCP首部和TCP数据段,这是一个强制性的字段,一定是由发送端计算和存储,由接收端进行验证。
在这里插入图片描述
④紧急指针(16bit)。如下图所示,URG标志为1,只有当URG标志置为1时该字段才有效,紧急指针是一个正的偏移量,和序号字段中的值相加表示紧急数据最后一个字节的序号。TCP的紧急方式是发送端向另一段发送紧急数据的一种方式。
在这里插入图片描述
⑤TCP选项。至少1个字节的可变长字段,标识哪个选项有效。Kind=0:选项表结束, Kind=1:无操作, Kind=2:最大报文段长度,Kind=3:窗口扩大因子, Kind=8:时间戳。如下图所示,Kind为2,代表最大报文长度MSS size。
在这里插入图片描述
⑥数据部分。当前数据包的数据部分
在这里插入图片描述

过程解析

①第一次握手
传输层
在这里插入图片描述

②第二次握手
传输层
在这里插入图片描述
③第三次握手
传输层
在这里插入图片描述

  • 26
    点赞
  • 291
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: TCP三次握手和四次挥手是TCP协议建立和关闭连接时所采用的步骤。 三次握手是在客户端和服务器之间建立TCP连接时的过程。首先,客户端向服务器发送一个请求连接的数据包,该数据包包含一个随机生成的序列号(SYN),表示客户端希望建立连接。服务器接收到该请求后,向客户端回复一个确认连接的数据包,该数据包包含其自己生成的一个随机序列号(SYN-ACK),表示服务器同意建立连接。最后,客户端再次向服务器发送一个确认连接的数据包,该数据包中包含服务器的序列号加一(ACK),表示客户端接受服务器的连接请求。这样,TCP连接就建立起来了。 四次挥手是在客户端和服务器关闭TCP连接时的过程。首先,客户端发送一个关闭连接的请求数据包(FIN),表示客户端想要关闭连接。服务器收到该请求后,向客户端回复一个确认关闭连接的数据包(ACK),但自己的数据可能没有发送完毕。服务器等到自己的数据发送完毕后,发送一个自己的关闭连接请求数据包(FIN),表示服务器也希望关闭连接。客户端收到服务器的请求后,回复一个确认关闭连接的数据包(ACK),然后等待一段时间,确保服务器收到了该数据包。最后,客户端和服务器都关闭连接,四次挥手过程完成。 通过Wireshark抓包分析TCP三次握手和四次挥手可以观察到每个数据包的源地址、目标地址、序列号、确认号等信息。可以通过Wireshark的过滤功能筛选出TCP协议相关的数据包进行分析。通过分析数据包的交互过程,可以确认连接建立和关闭的状态是否符合预期,并可以进一步分析网络延迟、丢包等问题。 综上所述,Wireshark抓包分析TCP三次握手和四次挥手可以帮助我们深入理解TCP连接的建立和关闭过程,以及发现网络故障的根源。 ### 回答2: TCP是一种常用的传输层协议,它通过进行三次握手来建立连接,并进行四次挥手来终止连接。 三次握手的过程如下: 1. 客户端发送一个SYN标志位的TCP报文段给服务器,表示请求建立连接; 2. 服务器收到请求后,回复一个带有SYN和ACK标志位的TCP报文段给客户端,表示同意建立连接; 3. 客户端收到服务器的回复后,再次发送一个带有ACK标志位的TCP报文段给服务器,表示连接建立成功。 四次挥手的过程如下: 1. 客户端发送一个FIN标志位的TCP报文段给服务器,表示希望断开连接; 2. 服务器收到请求后,回复一个带有ACK标志位的TCP报文段给客户端,表示确认收到断开请求; 3. 服务器完成数据的发送后,发送一个带有FIN标志位的TCP报文段给客户端,表示自己也要断开连接; 4. 客户端收到服务器的断开请求后,发送一个带有ACK标志位的TCP报文段给服务器,表示确认断开,并进入TIME_WAIT状态。 在三次握手的过程中,第一次握手是客户端发起的,第二次握手是服务器回复同意建立连接,第三次握手是客户端回复确认连接。这个过程是为了确保双方都同意建立连接,以保证数据传输的可靠性。 在四次挥手的过程中,首先客户端发送断开请求,服务器回复确认,然后服务器发送断开请求,客户端回复确认。这个过程是为了保证双方都断开连接,并确保数据完整性。 Wireshark是一款网络抓包分析工具。使用Wireshark可以捕获网络数据包,并对数据包进行解析和分析。通过Wireshark,我们可以看到每个TCP报文段的具体内容,并对三次握手和四次挥手的过程进行详细分析
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值