WireShark抓包分析TCP/IP三次握手与四次挥手

Wireshark介绍:

Wireshark(前称Ethereal)是一个网络封包分析软件。功能十分强大,是一个可以在多个操作系统平台上的开源网络协议分析工具软件,其主要作用是尝试捕获数据包,显示包的详细情况。


TCP三次握手(建立连接):

    • 原理如图:

    • 数据包的分析(tcp三次握手):

      本次实验为我们以192.168.239.133的49936号端口为例分析tcp三次握手和四次挥手

      第一次握手:

由图可知:192.168.239.133用端口号为49936的端口向218.195.47.39的8080号端口发送了一个连接请求,这个请求包序号为0,SYN=1

第二次握手:

由图可知:从第二次握手可以看到,218.195.47.39用端口号8080的端口向客户端192.168.239.133的49936号端口确认刚才的连接请求。这个报文段的序号为0,确认号为上图中客户端发起的报文段序列号加一(即0+1=1),且SYN=1,ACK=1。如下图:

   第三次握手:

由图可知:可以看到客户端192.168.239.133发送了一个带序号的报文对服务器218.195.47.39刚才发送的报文进行确认,这次发送的报文的序号为1,确认号为上图中服务器218.195.47.39发送的报文段序号加1(即0+1=1),SYN=0,ACK=1,如下图:


TCP四次挥手(断开连接):

    • 原理如图

    • 数据包的分析(tcp四次挥手):

  本次实验为我们以192.168.239.133的49936号端口为例分析tcp三次握手和四次挥手

   第一次挥手:

由图可知:客户端192.168.239.133用端口号为49936的端口对服务器218.195.47.39的8080端口发送一个序号为1387的FIN报文,FIN=1,ACK=1,如下图所示:

    第二次挥手:

由图可知:服务器218.195.47.39用端口号为8080的端口对客户端192.168.239.133的49936号端口发送一个序列号为461540的确认报文,确认号为上图中服务器192.168.239.133发送的报文段序号加1(即1387+1)

    第三次挥手:

由图可知:服务器218.195.47.39用8080端口对客户端192.168.239.133的49936端口发送了一个序号为461540的确认报文,确认号为第二步中客户端192.168.239.133发送的报文段序号加1(即1387+1)

    第四次挥手:

由图可知:客户端192.168.239.139使用49936端口向服务器218.195.47.39发送一个序号为1388的确认报文,它的Ack序号为461541(461540+1),ACK=1,如下图所示:

      

WireShark抓包分析以及对TCP/IP三次握手与四次挥手的分析的更多相关文章

  1. TCP/IP三次握手与四次挥手的正确姿势

    0.史上最容易理解的:TCP三次握手,四次挥手 https://cloud.tencent.com/developer/news/257281 A 理解TCP/IP三次握手与四次挥手的正确姿势http ...

  2. 以女朋友为例讲解 TCP/IP 三次握手与四次挥手

    背景 和女朋友异地恋一年多,为了保持感情我提议每天晚上视频聊天一次. 从好上开始,到现在,一年多也算坚持下来了. 问题 有时候聊天的过程中,我的网络或者她的网络可能会不好,视频就会卡住,听不到对方的声 ...

  3. TCP/IP三次握手与四次挥手(转)

    一.TCP报文格式        TCP/IP协议的详细信息参看<TCP/IP协议详解>三卷本.下面是TCP报文格式图: 图1 TCP报文格式 上图中有几个字段需要重点介绍下:      ...

  4. 31.TCP/IP 三次握手与四次挥手

    TCP/IP三次握手 TCP建立连接为什么是三次握手,而不是两次或四次? TCP,名为传输控制协议,是一种可靠的传输层协议,IP协议号为6. 顺便说一句,原则上任何数据传输都无法确保绝对可靠,三次握手 ...

  5. 理解 TCP/IP 三次握手与四次挥手

    TCP建立连接为什么是三次握手,而不是两次或四次? TCP,名为传输控制协议,是一种可靠的传输层协议,IP协议号为6. 顺便说一句,原则上任何数据传输都无法确保绝对可靠,三次握手只是确保可靠的基本需要 ...

  6. 使用 WireShark 分析 TCP/IP 三次握手 和 四次挥手

    TCP 三次握手 示意图 Wireshark 抓包注意事项 为了演示一个TCP三次握手建立连接的过程,我们通过 Chrome 访问一个网页. 已知 HTTP 协议就是建立在TCP链接上的 比如访问以下 ...

  7. tcp/ip三次握手及四次挥手

    三次握手Three-way Handshake 一个虚拟连接的建立是通过三次握手来实现的 1. (B) –> [SYN] –> (A) 假如服务器A和客户机B通讯. 当A要和B通信时,B首 ...

  8. Tcp/Ip 三次握手与四次挥手

    1. TCP/IP模型 我们一般知道OSI的网络参考模型是分为7层:“应表会传网数物”——应用层,表示层,会话层,传输层,网络层,数据链路层,物理层.而实际的Linux网络层协议是参照了OSI标准,但 ...

  9. TCP/IP三次握手与四次挥手

    三次握手: TCP(Transmission Control Protocol) 传输控制协议 TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接 位码即tcp标志位 ...

随机推荐

  1. Jmeter 用户定义的变量的使用

    第一步: 打开Jmeter软件,新建一个线程组,添加 > 配置元素 > 用户定义的变量 第二步: 设置值,如下图所示: 第三步,使用设置的名称  :

  2. jenkins任务

    #################################jenkins任务1.打包.持续集成.部署.定时运行 2.创建自由风格的一个任务 3.一个任务的核心步骤就是,build即创建,即运行 ...

  3. Spring AOP实现注解式的Mybatis多数据源切换

    一.为什么要使用多数据源切换? 多数据源切换是为了满足什么业务场景?正常情况下,一个微服务或者说一个WEB项目,在使用Mybatis作为数据库链接和操作框架的情况下通常只需要构建一个系统库,在该系统库 ...

  4. Dubbo 迈出云原生重要一步 - 应用级服务发现解析

    作者 | 刘军(陆龟)  Apache Dubbo PMC 概述 社区版本 Dubbo 从 2.7.5 版本开始,新引入了一种基于实例(应用)粒度的服务发现机制,这是我们为 Dubbo 适配云原生基础 ...

  5. keras中的early stopping

    目的:防止过拟合 # early stoppping from keras.callbacks import EarlyStopping early_stopping = EarlyStopping( ...

  6. 重置GrindConrol焦点行FocusedRowHandle

    List<model> list=this.CurrentList; var selectModel=tempselectmodel; //找selectModel在list中得位置 va ...

  7. Spider--补充_None_global_urlparse

    # 知识点补充: # 1) None: a = None if a: print("非None") else: print("None") if a is no ...

  8. CSS浮动好文章

    http://www.cnblogs.com/iyangyuan/archive/2013/03/27/2983813.html 看完上面这篇文章,我哭了.写的真好,我这块更菜.

  9. 手把手教你使用Vuex(一)

    1.定义 vuex 是一个专门为vue.js应用程序开发的状态管理模式. 这个状态我们可以理解为在data中的属性,需要共享给其他组件使用的部分.也就是说,是我们需要共享的data,使用vuex进行统 ...

  10. 用seaborn绘制散点图

    散点图可以显示观察数据的分布,描述数据的相关性,matlibplot也可以绘制散点图,不过我一般优先使用seaborn库的sctterplot()绘制,下面就介绍一下如何用seaborn.scatte ...