Wireshark抓包分析IP协议

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「专栏简介」:此文章已录入专栏《计算机网络零基础快速入门》

试验目的:抓包分析IP协议的传输过程和数据分片

操作系统:Windows 10 企业版

抓包工具:Wireshark 3.6.3

第一步:ping 目标主机

1)Wireshark开启抓包后, cmd 中执行命令:ping 54.222.162.186 -n 1 -l 3200

翻译:向目标主机发送一次数据包,包大小是 3200字节。

第二步:分析传输过程

1)重点看我标记的这6个包:

前三个是请求包,后三个是响应包;

数据帧的最大传输限制(MTU)是1500字节,我们 ping 的数据包是 3200 字节,会被IP协议分割成三个数据包(1500 + 1500 + 200),刚好对应前面三个请求包;

三个请求包最后以一个ICMP协议数据包结尾,用来传输控制信息。

响应包的作用也是如此。接下来,我们分析一下,IP协议是怎么分割数据的。

第三步:分析数据分片

1)先看第一个数据包(IPv4),重点看我圈中的字段:

Flags字段第二个值是 More Fragments,表示这个数据报后边有多余的数据分片;

Fragment Offset字段的值是0,表示这个数据分片从第0个字节开始保存数据。

2)再看第二个数据包(IPv4),重点看我圈中的字段:

Flags字段第二个值仍是More Fragments,表示这个数据报后边也有多余的数据分片;

Fragment Offset字段的值是1480,表示这个数据分片从第1480个字节开始保存数据。

从这里也可以反推出,第一个字段保存了 0~1480个字节。之所以只保存了1480个字段,是因为首部占了20个字节,首部+数据刚好够1500个字节,达到数据帧的上限。

3)再看第三个数据包(ICMP),重点看我圈中的字段:

Flags字段第二个值为空,表示这个数据报没有多余的数据分片;

Fragment Offset字段的值是2960,表示这个数据分片从第2960个字节开始保存数据。

从这里可以反推出,第二个字段保存了第 1480 ~ 2960个字节。

最下面的 IPv4 Fragments 字段记录了数据报的分片信息:第一、二个数据包保存了1480个字节,第三个数据包保存了248个字节。

接收方可以根据这些分片信息,重组被分割的数据。

第四步:分析生存时间

TTL是生存时间值,每经过一个路由器时,生存时间值减1,减少为0时,则会丢弃,目的是防止数据包在网络中循环转发,以节约网络资源。

1)观察ICMP请求和响应包,重点看我圈中的地方:

ICMP请求包的TTL是128,而返回的ICMP响应包的TTL则变成了48,这意味着中间经历了80个路由器,ping 命令的返回结果也可以观察到这一点:

相关推荐
软件开发技术深度爱好者15 分钟前
基于多个大模型自己建造一个AI智能助手
人工智能
中國龍在廣州28 分钟前
现在人工智能的研究路径可能走反了
人工智能·算法·搜索引擎·chatgpt·机器人
赖small强34 分钟前
【Linux 网络基础】libwebsockets 技术文档
linux·网络·https·tls·lib·websockets
攻城狮7号37 分钟前
小米具身大模型 MiMo-Embodied 发布并全面开源:统一机器人与自动驾驶
人工智能·机器人·自动驾驶·开源大模型·mimo-embodied·小米具身大模型
火白学安全40 分钟前
《Python红队攻防零基础脚本编写:进阶篇(一)》
开发语言·python·安全·web安全·网络安全·系统安全
搜移IT科技41 分钟前
【无标题】2025ARCE亚洲机器人大会暨展览会将带来哪些新技术与新体验?
人工智能
TT哇1 小时前
消息推送机制——WebSocket
java·网络·websocket·网络协议
信也科技布道师FTE1 小时前
当AMIS遇见AI智能体:如何为低代码开发装上“智慧大脑”?
人工智能·低代码·llm
青瓷程序设计1 小时前
植物识别系统【最新版】Python+TensorFlow+Vue3+Django+人工智能+深度学习+卷积神经网络算法
人工智能·python·深度学习
AI即插即用1 小时前
即插即用系列 | CVPR 2025 WPFormer:用于表面缺陷检测的查询式Transformer
人工智能·深度学习·yolo·目标检测·cnn·视觉检测·transformer