首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【25软考网工】第五章(2)IPv4 报文格式、分片计算 、地址分类

【25软考网工】第五章(2)IPv4 报文格式、分片计算 、地址分类

作者头像
christine-rr
发布2026-01-13 18:37:55
发布2026-01-13 18:37:55
300
举报

一、IPv4报文格式

1.IP报文格式

1)版本(4位) IPv4报文版本字段固定为0100,对应十进制为4,表示IPv4报文。 IPv6报文版本字段固定为0110,对应十进制为6。 2)头部长(5-15,单位4字节) 头部长字段为4位,为2^4=16,可以表示的数值[0,15],单位为4字节,取值范围5-15,对应20-60字节。 IPv4头部(20~60字节): IPv4报头长度可变,基本IP头部为20字节,通过选项字段可扩展至最多60字节

  • 基本IP头部长度:5x4B=20B
  • IP头部最长:15x4b=6B

3)TOS字段(8位) 用于区分服务,设置不同服务的优先级。例如,可将重要服务的优先级设为较高值。 4)总长度(16位) 16位字段,表示IP报文的总长度,包含IP报头。最大值为2^16-1=65535字节。 5)标识(16位) 相当于IP报文的ID,每发送一次加一,用于唯一标识报文。 6)标志(3位)和分片偏移(13位) 涉及IP分片 7) 生存期(TTL,8位) 设置数据包可经过的路由器上限,每经过一个路由器TTL减一。取值范围0-255。 8)协议(8位) 包含一个数字,表示IP报文内封装的上层协议类型。例如,协议号1表示ICMP,6表示TCP,17表示UDP。 9)头部校验和(16位) 对IP头部进行校验,校验值放在该字段。由于TTL值每经过一个路由器会变化,因此头部校验和需重新计算。 10)源IP地址、目的IP地址(32位) 32位源IP地址和目的IP地址 11 )选项字段(任意) 可选字段,最多320位即最大40字节。若存在,则IP头部最大可达60字节。 12) IP数据(任意) 数据部分最多65515字节(65535字节减去20字节基本头部)。

2.应用案例

1)例题:IPv4报文样式

通过wireshark抓包可以观察IPv4报文的格式:

2)例题:IHL字段最小值和最大值

解析: IHL字段占4位,单位为4字节,可表示最小值为5(54字节=20字节),最大值为15(154字节=60字节)。因此,IP头部长度最小为20字节,最大为60字节。

答案选A。

3)例题:IPv4无限转发控制字段

解析: 为控制IP数据报在网络中无限转发,IPv4数据报首部设置了TTL(生存期)字段。TTL值每经过一个路由器减一,当TTL值为0时,数据包被丢弃,最大为255。

答案选C。

4)例题:IPv4最大长度

解析: IPv4报文的最大能表示为2^16=65536[0,65535],最大长度65535字节。

答案选D。

5)例题:IP报酬首部有填充原因

解析: IP报酬首部有填充字段的原因是IHL(首部长度)必须是4字节(32位)的整数倍。如果不够,需用全0填充字段补齐。

答案选A。

10)例题:IPv4首部最大值

解析: IPv4首部的最大值为60字节,原因是IHL字段长度为4比特,最大能表示16个数(0-15),但单位取4字节,因此实际使用5-15这些数值,对应20-60字节。

答案选D,B,IHL字段长度为4比特。

3.知识小结

知识点

核心内容

考试重点/易混淆点

难度系数

IPV4报文格式

包含版本号、头部长、TOS字段、总长度、标识、标志位、TTL、协议号、校验和等字段

版本号固定值(IPv4: 0100→4,IPv6: 0110→6)

⭐⭐

头部长字段

4比特,单位4字节,取值5-15(对应20-60字节)

高频考点:最小5(20字节)、最大15(60字节)

⭐⭐⭐⭐

TOS字段

区分服务优先级(如领导数据设高优先级)

网络拥塞时优先转发高优先级数据

⭐⭐

总长度字段

16位,最大65535字节(含IP头和数据)

计算题:数据部分最大=65535-20(基本头)=65515字节

⭐⭐⭐

TTL字段

生存周期(0-255),每经三层设备减1

控制无限转发,常见初始值64/128/255

⭐⭐⭐

协议号

标识上层协议(1=ICMP,6=TCP,17=UDP)

必背特殊值

⭐⭐⭐

头部校验和

校验IP头部(TTL变化需重新计算)

不校验数据部分

⭐⭐

IP分片相关

标识(ID)、标志位、片偏移

分片规则需结合后续讲解(未展开)

⭐⭐⭐⭐

选项字段

扩展头部(0-40字节),最大总头60字节

实际抓包中罕见选项字段

⭐⭐

抓包验证

Wireshark示例:版本号、头部长5(20字节)、协议号6(TCP)

二进制转十进制技巧(如0101→5)

⭐⭐

高频考题

头部长单位/范围、TTL作用、总长度最大值、填充字段原因

易错点:头部长单位非1字节而是4字节

⭐⭐⭐⭐

二、IP分片计算

1. IP分片定义

传输限制:IP报文最大长度65535字节以太网MTU(最大传输单元)为1500字节 运输类比:相当于货轮(65535载重)需将货物分装给多个火车(1500载重)运输 帧结构:以太网帧包含首部14字节 + IP首部20字节 + TCP首部20字节+应用数据+尾部4字节,MTU范围46−1500字节

1)例题#IP分组分片计算

隐含条件:标准IP头部长度20字节,MTU1500字节 计算步骤:

  • 原始数据:3000字节(含头)→ 数据部分2980字节(3000−20)
  • 分片1:总长1500字节(含20字节头),数据1480字节
  • 分片2:同分片1,数据1480字节
  • 分片3:剩余数据20字节(2980−1480×2),总长40字节(20+20)

MF标志

  • 分片1/2置1(后续有分片)
  • 分片3置0(末片)

偏移量计算

  • 分片1:0(基准)
  • 分片2:1480/8=185(以8字节为单位)
  • 分片3:(1480+1480)/8=370

总长度变化:原始3000字节→分片后3040字节(多出40字节来自新增的2个IP头) 攻击案例:泪滴攻击(Teardrop)通过篡改偏移量使分片无法重组

2. 类比理解IP分片

类比模型:

  • 大型集装箱:总重3000斤(货物2980斤+箱体20斤)
  • 小型集装箱:限重1500斤(箱体均重20斤)

分装方案:

  • 前2箱:各装1480斤货物(总重1500斤)
  • 第3箱:装20斤剩余货物(总重40斤)

对应关系:货物重量=IP数据长度,箱体重量=IP头部长度

3. 应用案例

1)例题#分片计算

分片数量计算:当IP数据报总长度3000B经过MTU为1500B的链路时,需分成3片。第一片数据部分1480B(总长1500B含20B首部),第二片相同,第三片剩余20B数据(总长40B)。

偏移量计算:最后一个分片的Offset字段值为370,计算方式为1480*2/8=370(1480是前两片数据长度,8是因偏移量以8字节为单位)。

首部说明:标准IP首部为20字节(无可选字段时),每个分片都需携带独立首部。

答案:(24)B,(25)A

2)例题#分段和重装配字段作用

字段功能:

  • 段偏置值:指示分片在原始报文中的位置(如370表示从第370*8=2960字节开始)
  • M标志:MF=1表示后续还有分片,MF=0表示当前是最后分片
  • 报文ID:同一报文的所有分片标识符相同
  • 数据长度:记录当前分片的数据部分长度

典型错误:易混淆M标志与段偏置值的作用,需注意M标志只表示分片连续性。

答案:(23)A , (24)B

3)例题#分段和重装配用到哪些字段

核心字段:

  • 标识符:唯一标识同一报文的不同分片(如随机生成的16位ID)
  • M标志:More Fragment位,分片连续性指示
  • 片偏移:以8字节为单位的相对位置
  • 数据长度:当前分片有效载荷长度

重组原理:接收方通过标识符聚合分片,按片偏移排序,当收到MF=0的分片时完成重组。

答案:(16)B,(17)D, (18)A

4)例题#分片计算

分片细节:

  • 3000B报文在1500B MTU链路中分为3片(1480+1480+20数据)
  • 最后分片总长40B(20B首部+20B数据),但实际以太网需填充至64B

注意点:题目可能忽略最小帧长限制,实际网络传输时需考虑数据链路层要求。

答案:(22)B, (23)B

5)例题#分片叙述判断

IPv4/6区别:IPv4允许中间路由分片,IPv6通过MTU发现机制避免中间分片(仅在源端分片)

重组位置:始终在目的端重组,因分组交换可能导致分片走不同路径

分片验证:4000B报文分3片,最后一片MF=0且offset=370(1480*2/8)正确

典型错误:选项B错在"路由器重组",选项C的"每片4000B"明显矛盾

答案:D

6)例题#IP分片重组地点

分片发生点:

  • IPv4:源端或中间路由器(当MTU突然变小时)
  • IPv6:仅源端(通过Path MTU Discovery预先确定最小MTU)

重组原则:

    • 必须目的端重组,因分片可能经不同路由到达
    • 中间路由器不存储状态,无法保证收齐所有分片

记忆技巧:"IPv4处处可分,IPv6源头搞定;重组只看终点,路由绝不等待"

答案:B

4.知识小结

知识点

核心内容

考试重点/易混淆点

难度系数

IP分片原理

MTU限制导致分片需求:IP报文最大65535字节 vs 以太网MTU 1500字节; 类比说明:货轮(65535)需分装到火车(1500)运输

分片会增加额外IP头(每个分片20字节)

★★★☆☆

分片计算步骤

1. 计算净数据长度(总长-IP头); 2. 按MTU划分分片(1500-20=1480数据/片); 3. 处理剩余数据

易错点:总长度=分片数据+新增IP头(3000→3040字节)

★★★★☆

分片字段解析

MF标志位:1=还有后续分片,0=最后分片; 偏移量计算:前片数据长度/8(必须8字节对齐)

偏移量计算需排除IP头长度

★★★★☆

分片重组机制

重组位置:仅在目的端重组(非路由器); 重组依据:标识符+偏移量+MF标志

分组交换特性导致中间节点无法重组

★★★☆☆

分片攻击类型

泪滴攻击(Teardrop):篡改偏移量导致重组错乱

攻击目标是偏移量字段

★★☆☆☆

IPV4 vs IPV6

IPV4:中间网络可分片; IPV6:通过MTU发现避免分片

IPV6分片仅发生在源端

★★★★☆

典型考题分析

1. 3000字节分片数量计算(3片); 2. 最后分片偏移量(370); 3. MF标志位设置规则

注意以太网最小帧长64字节的隐含条件

★★★★☆

三、IPv4地址分类

基本结构:IPv4地址为32位二进制数,分为A、B、C、D、E五大类 主要分类:

  • A-C类:单播地址应用最广泛
  • D类:组播地址,部分场景使用
  • E类:保留地址,科研用途

地址范围:

  • A类:1.0.0.0-127.255.255.255(排除特殊地址。10.0.0.0~10.255.255.255私有地址;127.X.X.X保留地址,用于循环测试)
  • B类:128.0.0.0-191.255.255.255(172.16.0.0~172.31.255.255私有地址,169.254.X.X保留地址)
  • C类:192.0.0.0-223.255.255.255(192.168.0.0~192.168.255.255私有地址)
  • D类:224.0.0.0-239.255.255.255
  • E类:240.0.0.0-255.255.255.255

1. 特殊IPv4地址

1)0.0.0.0 主机端

  • DHCP分配过程中表示本机
  • 示例:DHCP Discovery报文源地址为0.0.0.0,目的地址255.255.255.255,UDP端口68→67

服务器端

  • 表示本机所有IPv4地址
  • 示例:Web服务监听0.0.0.0时,可通过任意本机IP访问

路由

  • 表示默认路由,当无精确匹配时使用

2)255.255.255.255 三层广播地址

  • 目标地址为255.255.255.255时,同一广播域内所有主机都会接收
  • 广播域范围可变,与子网划分相关

3)169.254.0.0/16 自动专用地址(APIPA):

  • DHCP故障或超时时自动分配
  • 可进行局域网通信但无法访问互联网
  • 示例:两台169.254.x.x主机可互相通信

4)127.0.0.0/8 本地环回地址

  • 范围:127.0.0.1-127.255.255.255
  • 功能:ping通任意127.x.x.x地址证明TCP/IP协议栈正常

5)RFC1918私有IP地址 特性: 不能直接访问公网,需通过NAT转换 地址范围:

  • A类:10.0.0.0/8(10.0.0.1~10.255.255.255)1个A类网络
  • B类:172.16.0.0/12(172.16.0.1~172.31.255.255)16个B类网络聚合
  • C类:192.168.0.0/16(192.168.0.1~192.1689.255.255)256个C类网络聚合

6)常见组播地址

  • 224.0.0.1:所有主机
  • 244.0.0.2:所有路由器
  • 224.0.0.5:所有运行OSPF路由器
  • 224.0.0.6:DR/BDR的组播接收地址
  • 224.0.0.9:RIPv2组播更新地址
  • 224.0.0.18:VRRP组播地址

2. 应用案例

1)例题:自动专用IP地址范围和使用情况
  • 关键点:APIPA地址范围为169.254.0.0/16
  • 使用场景:DHCP分配失败时自动获取
  • 答案:27题B,28题B
2)例题:私有地址个数和地址描述判断
  • A类错误:仅1个私有地址段(10.0.0.0/8)
  • B类错误:范围应为172.16.0.0-172.31.255.255
  • C类正确:256个C类网络(192.168.0.0/16)
  • 答案:D
3)例题:RIP路由协议
  • RIP度量标准:跳数(A)
  • RIPv2组播地址:224.0.0.9(C)
  • 对比:OSPF使用224.0.0.5和224.0.0.6
  • 答案:23题A,24题C

3.知识小结

知识点

核心内容

考试重点/易混淆点

难度系数

IPv4地址分类

32位地址,分为A/B/C/D/E五类,A/B/C为单播地址,D类为组播,E类保留

A类(1-127)、B类(128-191)、C类(192-223)、D类(224-239)范围需记忆

⭐⭐

特殊IPv4地址

- 0.0.0.0:DHCP初始请求源地址/服务器监听所有本地IP - 255.255.255.255:广播地址 - 169.254.x.x:DHCP失败后自动分配地址 - 127.x.x.x:环回地址(测试协议栈)

0.0.0.0在DHCP Discovery中的用途 169.254.x.x的通信限制(仅局域网)

⭐⭐⭐

私有地址(RFC1918)

- A类:10.0.0.0/8 - B类:172.16.0.0/12(16个B类网段聚合) - C类:192.168.0.0/16(256个C类网段聚合)

B类私有地址范围(172.16-172.31)易错 聚合后掩码(B类/12、C类/16)

⭐⭐⭐⭐

组播地址

- OSPF:224.0.0.5(AllSPFRouter)、224.0.0.6(AllDRouter) - RIPv2:224.0.0.9

RIPv1广播 vs. RIPv2组播(224.0.0.9) OSPF组播地址功能区分

⭐⭐⭐

路由协议对比

- RIP:基于跳数,v1广播/v2组播 - OSPF:基于带宽,使用组播224.0.0.5/6

RIP与OSPF的度量标准差异 版本更新方式(广播/组播)

⭐⭐⭐⭐

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2026-01-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、IPv4报文格式
    • 1.IP报文格式
    • 2.应用案例
      • 1)例题:IPv4报文样式
      • 2)例题:IHL字段最小值和最大值
      • 3)例题:IPv4无限转发控制字段
      • 4)例题:IPv4最大长度
      • 5)例题:IP报酬首部有填充原因
      • 10)例题:IPv4首部最大值
    • 3.知识小结
  • 二、IP分片计算
    • 1. IP分片定义
      • 1)例题#IP分组分片计算
    • 2. 类比理解IP分片
    • 3. 应用案例
      • 1)例题#分片计算
      • 2)例题#分段和重装配字段作用
      • 3)例题#分段和重装配用到哪些字段
      • 4)例题#分片计算
      • 5)例题#分片叙述判断
      • 6)例题#IP分片重组地点
    • 4.知识小结
  • 三、IPv4地址分类
    • 1. 特殊IPv4地址
    • 2. 应用案例
      • 1)例题:自动专用IP地址范围和使用情况
      • 2)例题:私有地址个数和地址描述判断
      • 3)例题:RIP路由协议
    • 3.知识小结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档