摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢!

“snow warn throughout the winter”

一、什么是 Wireshark ?
简单地说,Wireshark 是抓包工具。官网说,“Wireshark 是一个网络包分析工具。 网络数据包分析仪将尝试捕获网络数据包并试图尽可能详尽显示该数据包。”

推荐一本书《Wireshark 网络分析就这么简单》,Wireshark 工具下载地址 https://www.wireshark.org/download.html。

Wireshark 不单单能抓包,主要的 Features 是对数据包进行各种的分析。下载打开界面非常简单直观:

最上面是 Packet List 窗口,它列出了所有网络包。

在 Packet List 中选定的网络包会详细地显示在中间的 Packet Details 窗口中。

最底下是 Packet Bytes Details 窗口(16 进制数据),我们一般不会用到它。

二、我们抓什么包呢?如题 TCP
TCP 一脸懵逼。记得上次在 《图解Http协议》得知,HTTP 是一个客户端和服务器端请求和响应的标准TCP。其实建立在 TCP 之上的。那我们就抓 HTTP,这很简单。

三、实操 Wireshark

选择 Capture – Options,选择当前网络,点击 Start 。如图:

浏览器打开我的博客 www.bysocket.com ,然后在 Wireshark 中的过滤器输入博客 IP 过滤:ip.addr == 106.14.40.18

选择第一行,如第一张图,简单介绍下 Packet Details 窗口参数详情:

Frame – 物理层
Ethernet – 数据链路层
Internet Protocol Version – 网络层
Transmission Control Protocol – 传输层

大家知道 网络层次划分为 标准的OSI七层模型,还有 TCP/IP四层协议 以及 TCP/IP五层协议。如图:

其中,Transmission Control Protocol – 传输层是我们最为关心的。如图已经展开了:

具体我们先学习 TCP 报文段格式:

那么第二个红框,由上至下,一一大家可以对应下,重点的是:
Sequence number – 序号
Acknowledgment number – 确认号
Flags – 标志位
— Acknowledgment 确认位
— Push 急迫位
— Reset 重置位
— Syn 同步位
— Fin 终止位

a. 第一次握手标志位
localhost Seq=0 -> 博客地址
从标志位看出,同步位有值,在做请求(SYN):Syn 同步位为1

b. 第二次握手标志位
博客地址 Seq=0 Ack=1 -> localhost
从标志位看出,确认位、同步位有值,在做应答(SYN+ACK):Syn 同步位为 1 、Acknowledgment 确认位为 1

c. 第三次握手标志位
localhost Seq=1 Ack=1 -> 博客地址 (注: Seq=Seq+1)
从标志位看出,只有确认位有值,在做再次确认(SYN):Acknowledgment 确认位为 1

综上所述,一个完整的三次握手就是:请求(SYN) — 应答(SYN+ACK) — 再次确认(SYN)

如以上文章或链接对你有帮助的话,别忘了在文章结尾处评论哈~ 你也可以点击页面右边“分享”悬浮按钮哦,让更多的人阅读这篇文章。

用 Wireshark 图解:TCP 三次握手的更多相关文章

  1. linux Wireshark图解TCP三次握手与四次挥手

    Linux Wireshark图解TCP三次握手与四次挥手 原文章链接:Wireshark图解TCP三次握手与四次挥手 文章内容丰富 值得学习

  2. wireshark抓包直观图解 TCP三次握手/四次挥手详解

    转http://www.seanyxie.com/category/linux/ 作者:seanyxie |   一. TCP/IP协议族 TCP/IP是一个协议族,通常分不同层次进行开发,每个层次负 ...

  3. WireShark:TCP三次握手 抓包

    本机ip:192.168.201.200 服务器ip:192.168.230.20 抓到的数据如下: 第一次握手: SYN标记位为1,表示这是一个连接请求.seq 用于服务端返回确认信息,此时ack ...

  4. wireshark抓包图解 TCP三次握手/四次挥手详解[转]

    原文链接:http://www.seanyxie.com/wireshark%E6%8A%93%E5%8C%85%E5%9B%BE%E8%A7%A3-tcp%E4%B8%89%E6%AC%A1%E6% ...

  5. wireshark抓包图解 TCP三次握手/四次挥手详解

    http://www.seanyxie.com/wireshark%E6%8A%93%E5%8C%85%E5%9B%BE%E8%A7%A3-tcp%E4%B8%89%E6%AC%A1%E6%8F%A1 ...

  6. 图解TCP三次握手

    参考:https://blog.csdn.net/u012804886/article/details/80998114

  7. TCP三次握手(通俗易懂)

    一--导读 前不久中国和外国RPEC协议的签订,标志着东亚自贸区的建立成功.现在韩国和日本要做贸易.日本一直监听着韩国总统的一举一动,但他又不会主动.(服务器的监听状态)只是被动的等着韩国总统先开口. ...

  8. TCP三次握手及四次挥手详细图解

    TCP三次握手及四次挥手详细图解 Andrew Huangbluedrum@163.com    相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不 ...

  9. wireshark抓包工具简介以及tcp三次握手的一些含义

    wireshark是非常流行的网络封包分析软件,功能十分强大.可以截取各种网络封包,显示网络封包的详细信息.使用wireshark的人必须了解网络协议,否则就看不懂wireshark了.为了安全考虑, ...

  10. Wireshark基本介绍和学习TCP三次握手

    wireshark介绍 wireshark的官方下载网站: http://www.wireshark.org/ wireshark是非常流行的网络封包分析软件,功能十分强大.可以截取各种网络封包,显示 ...

随机推荐

  1. Hadoop HDFS 架构设计

    HDFS 简介 Hadoop Distributed File System,简称HDFS,是一个分布式文件系统. HDFS是高容错性的,可以部署在低成本的硬件之上,HDFS提供高吞吐量地对应用程序数 ...

  2. Android---组件篇---Handler的使用(1)[转]

    在android中,有很多功能是不能放在onCreate或者onStart方法里面,因为这些功能相对 来说费时比较长,比如说下载一个文件,下载的过程比较长,但是如果写在Activity中, 那么这段时 ...

  3. [C++] socket -7 [邮槽]

    ::利用邮槽实现windons进程通信 ::一般情况下CreateMailslot()常被使用在进程通信的服务器上,在客户端则是用函数CreateFile()打开指定的邮槽之后进行相关的操作. ::将 ...

  4. 到底是 const 还是 static readonly

    真的一样? const 和 static readonly 常在程序中用来声明常量,调用方法也没有什么不同,他们真的一样吗?我们可以做个试验. 程序集内的常量 现在我们建立一个程序,里面有一个MyCl ...

  5. [BTS] BizTalk EDI AS2 Error 1

    A message sent to adapter "HTTP" on send port "XZ.Test.AS2" with URI "https ...

  6. SQL——系统函数

    1) CASE CASE有两种使用形式:一种是简单的CASE函数,另一种是搜索型的CASE函数. [1]简单的 CASE 函数 Format: CASE input_expression WHEN w ...

  7. IIS7.5 HTTP错误403.1-Forbidden 您尝试从某个目录运行CGI、ISAPI或其他可执行程序,但该目录不允许运行可执行文件

    ----------------错误详细---------------------------------------------------------------- --------------- ...

  8. atitit.404错误的排查流程总结vOa6

    atitit.404错误的排查流程总结vOa6 1. 场景 1 1.1. 子应用猛个腊擦不能使用  404 兰.. 1 2. 服务器配置问题 2 2.1. 登录服务器管理子应用,查看应用是否启动okk ...

  9. paip.刮刮卡砸金蛋抽奖概率算法跟核心流程.

    paip.刮刮卡砸金蛋抽奖概率算法跟核心流程. #---抽奖算法需要满足的需求如下: 1 #---抽奖核心流程 1 #---问题???更好的算法 2 #---实际使用的扩展抽奖算法(带奖品送完判断和每 ...

  10. 如何在servlet取得spring beans (autowired)(转)

    在应用中一般普通的JavaPojo都是由Spring来管理的,所以使用autowire注解来进行注入不会产生问题,但是有两个东西是例外的,一个是 Filter,一个是Servlet,这两样东西都是由S ...