Wireshark数据抓包分析之传输层协议(TCP协议)

一、实验目的:

通过使用wireshark对TCP协议的数据包的抓取分析TCP协议的具体内容

二、预备知识:

1.需要了解TCP协议的三次握手过程

2.需要了解TCP协议的四次挥手的过程

三、网络拓扑

四、实验过程:

part1:3次握手和4次挥手的数据包的获取

1.通过使用TCP测试工具在机器一中创建服务器,并且进行相应的配置,然后打开wireshark进行capure

2.通过使用工具在机器二中创建客户端,并且进行连接,同时打开wireshark进行抓包

3.在客户端点击"连接"时,通过在wireshark中进行"ip.addr == 10.1.1.142 and ip.addr == 10.1.1.33"这种显示过滤得到3次握手的TCP数据包,进行保存,等待之后的分析

4.同样,在客户端发送"xxxx",然后在wireshark进行显示过滤之后,查看到发送数据的包,和4次挥手的包,进行保存,等待之后的分析

part2:分析3次握手和4次挥手的过程:

1.三次握手的分析过程如下:

依次打开这3个TCP数据包进行分析一下:

(1)第一个数据包:

首先,发送的sequence number = 0 ,Ack Number =0,代表这是第一次握手

然后,ack flag =0说明这次不是确认, syn flag = 1,说明这是依次想要连接

(2)第二个数据包:

seq number =0, ack number =1 ,说明这是第二次握手

ack flag =1 确认了第一次握手, syn flag =1 想要进行握手连接

(3)第三个数据包:

seq number =1 , ack number =1 说明这是第三次握手

ack flag =1 确认了第二次握手, syn flag = 0 没有想要连接

(4)突然想到了那个windows size的字段:依次展示3次握手这个字段的内容

这是客户端发给服务器的

这是服务器发给客户端的

这是第三次握手的

算了,不是很理解,先pass

2.分析四次挥手的过程如下:

(1)第一个数据包:

ack flag =1 ,前一个收到了, Fin =1 想要断开连接

(2)第二个数据包:

单纯的确认前一个Fin的请求,并没有发送自己想要Fin的想法

(3)第三个数据包:

确认了前一个数据包,同时,自己发出Fin想要断开连接

(4)第四个数据包:

ok,本人同意了,你断开就断开吧

相关推荐
FPGA小徐44 分钟前
PA1 基础设施(2)深度解析:NEMU 中 ITRACE、MTRACE、FTRACE、IRINGBUF、ETRACE、DIFFTEST 全解析
java·服务器·网络
life码农6 小时前
Nginx 配置允许指定 IP 段访问:从 192.168.1.1 到 192.168.1.124 及 /24 详解
网络·tcp/ip·nginx
javaDocker6 小时前
16.5 小时,我打掉了两只「SSL 握手失败」的怪
网络·网络协议·ssl
蜗牛互联网7 小时前
Python接入Gemini 3.8 Flash实现票据视觉抽取与规则校验
java·javascript·网络·人工智能·python
我就是不信7 小时前
TCP 原理详解:从三次握手到拥塞控制
网络·网络协议·tcp/ip
木白CPP7 小时前
USB(一): USB 概述&&介绍
linux·网络·嵌入式硬件
可乐鸡翅yeah_7 小时前
AES‑128 加密 M3U8,IV 初始化向量新手容易踩坑
前端·网络·数据库·ffmpeg·音视频·m3u8在线
HEJOO98 小时前
指针与结构体:C 语言进阶核心详解
c语言·开发语言·网络
en.en..8 小时前
IO 多路复用:select、poll、epoll 核心函数解析
网络
我就是不信8 小时前
TCP/IP 网络编程:从入门到实战
网络·网络协议·tcp/ip