用 Wireshark 图解:TCP 三次握手
摘要: 原创出处: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 三次握手的更多相关文章
- linux Wireshark图解TCP三次握手与四次挥手
Linux Wireshark图解TCP三次握手与四次挥手 原文章链接:Wireshark图解TCP三次握手与四次挥手 文章内容丰富 值得学习
- wireshark抓包直观图解 TCP三次握手/四次挥手详解
转http://www.seanyxie.com/category/linux/ 作者:seanyxie | 一. TCP/IP协议族 TCP/IP是一个协议族,通常分不同层次进行开发,每个层次负 ...
- WireShark:TCP三次握手 抓包
本机ip:192.168.201.200 服务器ip:192.168.230.20 抓到的数据如下: 第一次握手: SYN标记位为1,表示这是一个连接请求.seq 用于服务端返回确认信息,此时ack ...
- 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% ...
- 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 ...
- 图解TCP三次握手
参考:https://blog.csdn.net/u012804886/article/details/80998114
- TCP三次握手(通俗易懂)
一--导读 前不久中国和外国RPEC协议的签订,标志着东亚自贸区的建立成功.现在韩国和日本要做贸易.日本一直监听着韩国总统的一举一动,但他又不会主动.(服务器的监听状态)只是被动的等着韩国总统先开口. ...
- TCP三次握手及四次挥手详细图解
TCP三次握手及四次挥手详细图解 Andrew Huangbluedrum@163.com 相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不 ...
- wireshark抓包工具简介以及tcp三次握手的一些含义
wireshark是非常流行的网络封包分析软件,功能十分强大.可以截取各种网络封包,显示网络封包的详细信息.使用wireshark的人必须了解网络协议,否则就看不懂wireshark了.为了安全考虑, ...
- Wireshark基本介绍和学习TCP三次握手
wireshark介绍 wireshark的官方下载网站: http://www.wireshark.org/ wireshark是非常流行的网络封包分析软件,功能十分强大.可以截取各种网络封包,显示 ...
随机推荐
- IPv6协议
IPv4协议仅能提供约2.5亿个IP地址, 即使使用CIDR和NAT等技术进行扩展也无法满足日益增长的需要. IETF于1996年开始研究下一代IP协议IPv6, 并于1998年12月正式公布(RFC ...
- 模仿angularjs写了一个简单的HTML模版和js数据填充的示例
<!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> ...
- Server Develop (七) Linux 守护进程
守护进程 守护进程,也就是通常说的Daemon进程,是Linux中的后台服务进程.它是一个生存期较长的进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件.守护进程常常在系统引导装 ...
- 看看这蛋疼的Java代码
项目上要基于现有代码开发,却碰到了很多让人蛋疼的代码.例如下面这个,大家看看能找到多少槽点: public static String addDate(String date, String into ...
- 选择哪种方式进行SharePoint的备份
关于SharePoint的备份还原功能,大家可能都有所了解.但是SharePoint一共有多少种备份方式呢,哪种备份方式是更适合你的呢,本文主要为大家梳理,并且深入的研究一下常见的几种备份方式,以便大 ...
- paip. java的 函数式编程 大法
paip. java的 函数式编程 大法 Java 语言中常被忽视的一个方面是它被归类为一种命令式(imperative)编程语言.命令式编程虽然由于与 Java 语言的关联而相当普及,但是并不是惟一 ...
- 学习IT资源分享,欢迎各位知道的学习IT资源前来分享
1:排序不是按照名次,随机排序 慕课学习网https://www.imooc.com/ 腾讯课堂 https://ke.qq.com/ 柠檬学院 http://bjlemon.edusoho.cn/ ...
- UVa 10387- Billiard
UVa 10387- Billiard Table of Contents 1 题目 2 思路 3 代码 4 参考 1 题目 ============= Problem A: Billiard In ...
- Win7下SQLite的简单使用
前言 SQLite 是一个软件库,实现了自给自足的.无服务器的.零配置的.事务性的 SQL 数据库引擎.SQLite 是在世界上最广泛部署的 SQL 数据库引擎.SQLite 源代码不受版权限制. 简 ...
- 关于PF_RING/Intel 82599/透明VPN的一些事
接近崩溃的边缘,今天这篇文章构思地点在医院,小小又生病了,宁可吊瓶不吃药,带了笔记本却无法上网,我什么都不能干,想了解一些东西,只能用3G,不敢 开热点,因为没人给我报销流量,本周末我只有一天时间,因 ...