4.3--入门知识扫盲,IPv4的头部报文解析,数据报分片,地址分类(包你看一遍全部记住)
IPv4协议:网络世界的快递包裹指南(附拆箱说明书)
“IPv4就像一张明信片,既要写清楚地址,又要控制大小别超重” —— 某网络工程师的桌面铭牌
一、IPv4报头:快递面单的终极艺术
1.1 报头结构图(吃货简化版)
这里我们的第二排是负责报文切片,这个在后面会有详细的概述
1.2 报头字段详解(快递员版)
字段名 | 长度 | 江湖作用 | 现实比喻 |
---|---|---|---|
Version (版本) | 4bit | 声明是IPv4还是IPv6 | 快递公司LOGO |
IHL (头部长度) | 4bit | 报头长度(单位4字节) | 面单用了多少张便利贴 |
ToS (服务类型) | 8bit | 快递加急/普通 | 选择顺丰还是邮政 |
Total Length | 16bit | 整个包裹大小(最大65535字节) | 包裹重量不超过电梯承载 |
Identification | 16bit | 分片身份证号 | 快递单号 |
Flags (标志位) | 3bit | DF(别切)/MF(还有分片) | "易碎勿压"标签 |
Fragment Offset | 13bit | 分片偏移量(单位8字节) | 拼图的位置编号 |
TTL (生存时间) | 8bit | 最多经过多少路由器 | 快递员体力值 |
Protocol (协议) | 8bit | 上层协议类型(TCP=6,UDP=17) | 包裹里是文件还是生鲜 |
Header Checksum | 16bit | 头部校验和 | 面单防伪码 |
Source IP | 32bit | 发件人地址 | 你的淘宝收货地址 |
Destination IP | 32bit | 收件人地址 | 女朋友家的地址 |
二、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 分片重组规则
- 同一身份证:Identification字段相同
- 偏移量连续:Offset字段形成序列
- 最后一片:MF标志位为0
- 超时机制:重组等待时间通常30秒
(段子:某黑客伪造分片导致服务器内存溢出,堪称"分片炸弹")
三、IP地址分类:网络世界的房地产
3.1 传统分类法(小区户型图)
类别 | 地址范围 | 默认掩码 | 现实比喻 | 私有地址段 |
---|---|---|---|---|
A类 | 1.0.0.0 - 126.255.255.255 | 255.0.0.0 | 豪华别墅区 | 10.0.0.0/8 |
B类 | 128.0.0.0 - 191.255.255.255 | 255.255.0.0 | 高端小区 | 172.16.0.0/12 |
C类 | 192.0.0.0 - 223.255.255.255 | 255.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地址发展史
- 分类寻址:1981年RFC791定义
- 子网划分:1985年RFC950引入
- CIDR时代:1993年RFC1519终结分类时代
- NAT技术:缓解IPv4地址枯竭的续命丹
4.3 分片注意事项
- 性能影响:分片增加路由器处理负担
- 安全风险:分片可用于规避防火墙检测
- 重组漏洞:早期系统存在分片缓冲区溢出风险
五、灵魂问答:为什么需要IP分片?
Q:为什么不直接拒绝大包?
A:就像快递站不能拒收大件,但可以拆分运输
Q:分片有什么缺点?
A:1. 丢失任意分片导致整个数据包失效
2. 增加网络设备处理负担
3. 安全隐患(分片攻击)
Q:如何避免分片?
A:使用Path MTU Discovery技术,找到路径最小MTU
“IPv4就像乐高积木,拆开容易组装难” ——《网络工程从入门到改行》