用 WireShark 抓住 TCP

Wireshark 是帮助我们分析网络请求的利器,建议每个同学都装一个。我们先用 Wireshark 抓取一个完整的连接建立、发送数据、断开连接的过程。

简单的介绍一下操作流程。

1、首先打开 Wireshark,在欢迎界面会列出当前机器上的所有网口、虚机网口等可以抓取的部件。

2,接下来要用 Telnet 连接一个外网服务器,所以我选择第一个 WI-FI:en0,这样 Wireshark 就会捕获我连接的 wifi 上的网络传输。

3、想要抓一下最简单的 TCP 连接、发数据、断开的过程,所以要做一下抓取过滤。Wireshark 中的过滤器可以实现这样的需求。在下图红框部分可以选了一个过滤器。

4、因为当前没有直接可用的符合要求的过滤器,所以,需要自己写一个。点击前面的绿色书签图标,然后在弹出窗口中点击加号添加一个。

内容如下,语法就不解释了,一看就知道。

tcp and host

5、选择好刚添加的这个过滤器,双击wifi这个 interface 进入就开始捕获了。

6、这里用了 telnet 连接这台服务器的 6379 端口 telnet ip 6379,因为这台服务器上装着 redis,可以模拟发数据。

在控制台中连接到 6379 端口成功,然后在 Wireshark 上马上捕获到了。

这就是三次握手的过程。

7、然后直接关掉终端,这样会自动触发断开连接,并且发送最少的数据,方便我们观察。整个的过程都被 Wireshark 完整的捕捉到了。

第一部分是连接建立的三次握手,第二部分是发了长度为 1个字节的数据,第三步是客户端主动发起的断开连接的四次挥手过程。

Wireshark 简单介绍

有图先看图

概览信息

也就是图中最上面的红色框部分。这一次的连接建立和中断一共产生了来回 8 次的请求,每次请求会在列表上列出时间、源端IP、目的端IP、以太网帧长度以及概览信息,包括数据传输方向(源端口->目标端口)、标记情况、序号、确认序号、窗口大小等等。

以太网帧

在每次请求信息中,还包括以太网帧,因为信息最终都会通过帧的形式发送出去。

IP数据报

还有 IP 数据报内容,其中包含了源端 IP 和 目的端 IP 等信息。

TCP段

TCP 段当然是重点了,其中包含了 TCP 协议中的所有信息,包括端口号、

相关推荐
python算法(魔法师版)11 分钟前
网络编程入门(一)
大数据·网络·网络协议·计算机网络
网络小白不怕黑19 分钟前
Python Socket编程:实现简单的客户端-服务器通信
服务器·网络·python
PatrickYao042219 分钟前
想要建站但没有服务器?雨云RCA,免服务器即可搭建完整网站!!!
运维·服务器·alist·云应用·无服务器部署
不是吧这都有重名2 小时前
利用systemd启动部署在服务器上的web应用
运维·服务器·前端
传知摩尔狮2 小时前
Linux 中断源码性能分析实战:从内核深处榨取每一丝性能
linux·运维·服务器
君鼎3 小时前
muduo库TcpServer模块详解
linux·网络·c++
开***能3 小时前
包装设备跨系统兼容:Profinet转Modbus TCP的热收缩包装机改造方案
服务器·网络·tcp/ip
卡戎-caryon4 小时前
【MySQL】02.数据库基础
linux·网络·数据库·mysql·存储引擎
技术宝哥4 小时前
从另一个视角理解TCP握手、挥手与可靠传输
网络·网络协议·tcp/ip
李白你好4 小时前
H3C网络设备(交换机、路由器、防火墙)常用命令整理
运维·网络·智能路由器