当前位置: 首页 > news >正文

用 WireShark 抓住 TCP

 

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

 

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

 

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

79ee4bb3269440aba6c627529ae625dc.png

 

 

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

 

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

c87de7c19e194f2f87ebfaa76cc2424e.png

 

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

 

52f05c9a6ec74340abf8c52e1fe83991.png

 

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

 

tcp and host 1613ed7c21ad4452afd4cf803def0000.jpg

 

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

 

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

8f3b49fd32494c57b4d7ba0d44098f95.png

 

 

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

 

3071e0bf88ac46a1aba887462181cfe5.png

 

这就是三次握手的过程。

 

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

 

02d5540e49d44d6e8621982ef32ada66.png

 

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

 

Wireshark 简单介绍

有图先看图

 

3d383095b03c4777954bc3aad2047f23.png

 

概览信息

 

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

 

以太网帧

 

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

 

IP数据报

 

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

 

cb9d43ccdcfd4ecaaa59aff60d7a6842.png

 

TCP段

 

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

 

38f8583fd50a4b5b99192009e4857433.png

 

http://www.lryc.cn/news/401826.html

相关文章:

  • Lua基础知识入门
  • 【机器学习实战】Datawhale夏令营2:深度学习回顾
  • 开发扫地机器人系统时无法兼容手机解决方案
  • Elasticsearch 角色和权限管理
  • 华为HCIP Datacom H12-821 卷42
  • 【精品资料】物业行业BI大数据解决方案(43页PPT)
  • 推荐一款处理TCP数据的架构--EasyTcp4Net
  • 2、电脑各部件品牌介绍 - 计算机硬件品牌系列文章
  • Git【撤销远程提交记录】
  • java基础学习:序列化之 - Fast serialization
  • Microsoft Build 2024 推出 .NET 9:Tensor<T>、 OpenAI Collaboration和.NET Aspire
  • 【Neural signal processing and analysis zero to hero】- 2
  • 好用的AI搜索引擎
  • 十、Java集合 ★ ✔(模块18-20)【泛型、通配符、List、Set、TreeSet、自然排序和比较器排序、Collections、可变参数、Map】
  • 阿里云开源 Qwen2-Audio 音频聊天和预训练大型音频语言模型
  • SpringBoot集成MQTT实现交互服务通信
  • python实现插入排序、快速排序
  • Spring Boot集成kudu快速入门Demo
  • html超文本传输协议
  • 利用AI辅助制作ppt封面
  • 【spring boot】初学者项目快速练手
  • Laravel+swoole 实现websocket长链接
  • 【C#】Array和List
  • SpringCloud网关的实现原理与使用指南
  • LabVIEW 与 PLC 通讯方式
  • 数据结构初阶·排序算法(内排序)
  • PL/SQL oracle上多表关联的一些记录
  • Java.Net.UnknownHostException:揭开网络迷雾,解锁异常处理秘籍
  • 第十课:telnet(远程登入)
  • 【概率论三】参数估计:点估计(矩估计、极大似然法)、区间估计