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

4.3--入门知识扫盲,IPv4的头部报文解析,数据报分片,地址分类(包你看一遍全部记住)

IPv4协议:网络世界的快递包裹指南(附拆箱说明书)

“IPv4就像一张明信片,既要写清楚地址,又要控制大小别超重” —— 某网络工程师的桌面铭牌

一、IPv4报头:快递面单的终极艺术

1.1 报头结构图(吃货简化版)

Version
煎饼果子摊
IHL
面饼层数
ToS
加几个蛋
Total Length
煎饼总重量
Identification
订单编号
Flags
要不要切
Fragment Offset
切几刀
TTL
保质期
Protocol
夹什么菜
Header Checksum
验货单
Source IP
你家地址
Destination IP
对象地址

在这里插入图片描述
这里我们的第二排是负责报文切片,这个在后面会有详细的概述

1.2 报头字段详解(快递员版)

字段名长度江湖作用现实比喻
Version (版本)4bit声明是IPv4还是IPv6快递公司LOGO
IHL (头部长度)4bit报头长度(单位4字节)面单用了多少张便利贴
ToS (服务类型)8bit快递加急/普通选择顺丰还是邮政
Total Length16bit整个包裹大小(最大65535字节)包裹重量不超过电梯承载
Identification16bit分片身份证号快递单号
Flags (标志位)3bitDF(别切)/MF(还有分片)"易碎勿压"标签
Fragment Offset13bit分片偏移量(单位8字节)拼图的位置编号
TTL (生存时间)8bit最多经过多少路由器快递员体力值
Protocol (协议)8bit上层协议类型(TCP=6,UDP=17)包裹里是文件还是生鲜
Header Checksum16bit头部校验和面单防伪码
Source IP32bit发件人地址你的淘宝收货地址
Destination IP32bit收件人地址女朋友家的地址

二、IP分片:当包裹太大时的骚操作

2.1 分片原理(切蛋糕流程)

graph TD
    A[原始数据包1500字节] --> B{MTU=500的路由器}
    B --> C[切!]
    C --> D[分片1: 500字节]
    C --> E[分片2: 500字节]
    C --> F[分片3: 500字节]
    D --> G((MF=1, Offset=0))
    E --> H((MF=1, Offset=62))
    F --> I((MF=0, Offset=124))
分片计算小课堂:
原始数据包:1500字节
MTU限制:500字节
每个分片数据量 = MTU - IP头(20) = 480字节
实际分片数:ceil(1500/480)=4片 (这里示例简化为3片)
偏移量计算:480/8=60 → 实际偏移量需要按8字节对齐

2.2 分片重组规则

  1. 同一身份证:Identification字段相同
  2. 偏移量连续:Offset字段形成序列
  3. 最后一片:MF标志位为0
  4. 超时机制:重组等待时间通常30秒

(段子:某黑客伪造分片导致服务器内存溢出,堪称"分片炸弹")

三、IP地址分类:网络世界的房地产

3.1 传统分类法(小区户型图)

类别地址范围默认掩码现实比喻私有地址段
A类1.0.0.0 - 126.255.255.255255.0.0.0豪华别墅区10.0.0.0/8
B类128.0.0.0 - 191.255.255.255255.255.0.0高端小区172.16.0.0/12
C类192.0.0.0 - 223.255.255.255255.255.255.0普通公寓192.168.0.0/16
D类224.0.0.0 - 239.255.255.255组播专用小区广播站
E类240.0.0.0 - 255.255.255.255保留未使用未开发地块

3.2 CIDR表示法(现代精装公寓)

传统分类:192.168.1.0/24 → 255.255.255.0
CIDR表示:192.168.1.0/26 → 可划分4个子网(每个子网62主机)
子网划分实例:
原始网络:192.168.1.0/24
切成四个子网:
• 192.168.1.0/26 (1-62)
• 192.168.1.64/26 (65-126)
• 192.168.1.128/26 (129-190)
• 192.168.1.192/26 (193-254)

(灵魂配图建议:用俄罗斯套娃表示子网划分)

四、专业知识点总结

4.1 IPv4头部关键字段

  • TTL机制:每经过一个路由器减1,防止数据包无限循环
  • 分片限制:DF=1时禁止分片,常用于路径MTU发现
  • 协议字段对照表
    • 1 → ICMP (网络诊断)
    • 6 → TCP (可靠传输)
    • 17 → UDP (快速传输)
    • 89 → OSPF (路由协议)

4.2 IP地址发展史

  1. 分类寻址:1981年RFC791定义
  2. 子网划分:1985年RFC950引入
  3. CIDR时代:1993年RFC1519终结分类时代
  4. NAT技术:缓解IPv4地址枯竭的续命丹

4.3 分片注意事项

  1. 性能影响:分片增加路由器处理负担
  2. 安全风险:分片可用于规避防火墙检测
  3. 重组漏洞:早期系统存在分片缓冲区溢出风险

五、灵魂问答:为什么需要IP分片?

Q:为什么不直接拒绝大包?
A:就像快递站不能拒收大件,但可以拆分运输

Q:分片有什么缺点?
A:1. 丢失任意分片导致整个数据包失效
   2. 增加网络设备处理负担
   3. 安全隐患(分片攻击)

Q:如何避免分片?
A:使用Path MTU Discovery技术,找到路径最小MTU

“IPv4就像乐高积木,拆开容易组装难” ——《网络工程从入门到改行》


http://www.kler.cn/a/592109.html

相关文章:

  • 它,让机器人与HMI屏无缝对接
  • Prometheus 和 Grafana科普介绍
  • Unity特效动态合批问题
  • 8、vue2迁移Vue3
  • 详解c++的编译过程,如何从源文件到可执行文件到
  • Android生成多个弹窗
  • Github 2025-03-15 Rust开源项目日报 Top10
  • vlan初学的总结
  • 3.5 二分查找专题:LeetCode 852. 山脉数组的峰值
  • Ubuntu 服务器安装 Python 环境 的详细指南
  • 用Python玩转数据可视化:从创意到可解释性的完美结合
  • 电商项目Ts版本
  • 【从零开始学习计算机科学】软件测试(二)单元测试 与 集成测试
  • el-table树形表格合并相同的值
  • 牛客周赛84 题解 Java ABCDEFG AK实录
  • 机器学习(七)
  • Linkreate wordpressAI插件 24小时自动生成原创图文,新增从百度、必应搜索引擎自动获取相关下拉关键词
  • 逻辑回归Review
  • 【软考-架构】13.1、软件架构概述-构件技术
  • Java泛型是什么?有什么作用?