网络层(一)

官方信息技术老师·14 页·深入(追求细节与边界)·0 次浏览·3 天前
IP协议子网划分分组转发

网络层(一)

逐字节拆解IP数据报,理清子网划分、CIDR与分组转发的完整逻辑

按 空格/→ 演示下一步

1 / 14 页

全部页面点击任意一页,跳回舞台从这页播放

IP协议子网划分分组转发

网络层(一)

逐字节拆解IP数据报,理清子网划分、CIDR与分组转发的完整逻辑

1第 1 页 · 网络层(一)

网络层引言

寄一个快递从北京到广州,你只填了收件地址,中途经过哪些分拣中心、走哪条路线,并不需要关心——快递系统替你做了决策。网络层在互联网里扮演的就是这个「跨网决策」角色。

OSI 定位
TCP/IP 四层模型中的第三层,核心协议是 IP
两大功能
路由(选路)与转发(把包交给下一跳)
服务边界
无连接、尽力而为交付,不保证不丢、不重、不序
关键协议族
IP 转发、ICMP 差错与控制、ARP 地址解析
全国快递分拣系统对应 →网络层的路由与转发

分拣中心看目的地决定下一站 = 路由器查路由表决定下一跳;都不承诺时限,只管把包裹往前推

2第 2 页 · 网络层引言

IP地址

寄包裹到外省,得写省、市、街道、门牌——少任何一层都可能送错。互联网里的路由器面对同样局面,它依靠 IP 地址把数据送到正确的主机。

定义
为网络接口分配的 32 位(IPv4)逻辑标识,是网络层定位设备的依据。
层级结构
由网络号与主机号两部分组成,分别标识所属网络与该网络内的主机。
唯一性范围
在同一网络内必须唯一;不同网络可重复,公私网靠 NAT 互通。
与 MAC 的边界
MAC 是链路层固定物理地址,IP 是网络层可变逻辑地址。
邮政地址对应 →IP 地址

网络号=街道区划,主机号=门牌号;不同城市可有相同门牌号

3第 3 页 · IP地址

子网规划

上一页我们拿到 IP 地址,比如 192.168.1.0/24。但地址到手只是开始——公司几百号人要分部门、分楼层,网络也得跟着切。子网规划,就是把一整段地址切成小块来分配。

规划目的
把大网络切成小广播域,省地址、好管理
核心做法
从主机位借几位出来当子网号
掩码变长
借 n 位,掩码从 /24 变成 /(24+n)
数量公式
借 n 位 → 2ⁿ 子网,每子网可用主机 2^余位 - 2
一栋 256 间房的写字楼对应 →/24 网络切子网

借房号前两位当区号(00/01/10/11),切成 4 区各 64 间;区号就是子网号

子网数=2n,每子网可用主机=2h2\text{子网数}=2^n,\quad \text{每子网可用主机}=2^h-2
4第 4 页 · 子网规划

IP寻址

上一节我们把一个大网切成若干子网,每个子网都拿到了自己的「地盘」——但这种「地盘」到底靠什么来识别、报文又是凭什么一路找到终点的?这就轮到 IP 寻址上场。

位长与唯一性
IPv4 共 32 位、IPv6 共 128 位,全网唯一标识一个网络接口
网络号 + 主机号
前缀定位网络、剩余位定位主机,类似「省+市+街道+门牌」
最长前缀匹配
路由器逐跳比对目标 IP 与路由表,匹配越长越优先转发
三种寻址方式
单播一对一、广播一对本地全网、组播一对特定订阅组
邮政寄信系统对应 →IP 寻址与转发

地址=收件地址;路由器=分拣中心;网络号=邮编区段;最长前缀匹配=按邮编层级层层下送

网络号=IP 地址子网掩码\text{网络号}=\text{IP 地址}\,\land\,\text{子网掩码}
5第 5 页 · IP寻址

IP分组

IP分组:定义、要点与典型应用

IP分组
IP分组:定义、要点与典型应用
6第 6 页 · IP分组

什么是IPv6?

IPv4只有32位地址,约43亿个。移动互联网、物联网让每台设备都要IP,地址早已分完。IPv6用128位地址,把这个问题彻底解决。

128位地址
地址长度扩展到128位,地址空间约3.4×10³⁸个,是IPv4的7.9×10²⁸倍
十六进制表示
8组十六进制数用冒号分隔,连续零组可缩写为::
报头简化
固定40字节,去掉分片、校验和等字段,路由器转发更快
无状态自动配置
无需DHCP,设备根据前缀自动生成接口标识,即插即用
原生IPsec
协议层内置加密和身份认证,作为标准能力而非可选扩展
全球每粒沙子一个门牌号对应 →IPv6海量地址空间

2的128次方足够给地球上每粒沙子都分到独立编号

7第 7 页 · 什么是IPv6?

IPv6地址

上一页解释了IPv6诞生的原因——IPv4地址快用完了。IPv6用128位地址解决根本问题,但它的设计远不止「位数翻几倍」,地址从格式到语义都换了思路。

128位地址空间
共 2¹²⁸ ≈ 3.4×10³⁸ 个地址,理论上地球每粒沙子可分到数百万个
冒号十六进制
8组16进制数用冒号分隔;连续0可压缩为::,每组前导0可省略
三种地址类型
单播、多播、任播;取消广播,用多播到全节点组 ff02::1 替代
层级化切分
前48位全局前缀+16位子网ID+64位接口ID;按位切片便于路由聚合
无状态自动配置
SLAAC:设备结合前缀+MAC自动生成接口ID,无需DHCP即可联网
邮编+省市区+门牌号对应 →IPv6层级地址

全局前缀≈国家,子网ID≈街道社区,接口ID≈门牌+房间;路由可逐层缩小范围

2001:0db8:85a3全局前缀/48:0000子网ID/16:0000:8a2e:0370:7334接口ID/64\underbrace{2001:0db8:85a3}_{\text{全局前缀/48}}:\underbrace{0000}_{\text{子网ID/16}}:\underbrace{0000:8a2e:0370:7334}_{\text{接口ID/64}}
8第 8 页 · IPv6地址

IPv6分组

上一页讲过 IPv6 地址怎么写,但地址只是「门牌号」,真正在网络上传送的是一个一个 IPv6 分组。它在结构上做了大刀阔斧的精简。

基本头固定 40 字节
所有 IPv6 分组必有,长度恒定,路由器按固定字段处理,转发更快
扩展头按需链式装载
路由、分片、安全等需求才追加,按链表顺序依次处理,不用就不带
载荷承载上层数据
TCP/UDP 段或 ICMPv6 报文跟在最后,才是分组的「干货」
标准快递箱+可选填充物对应 →IPv6 分组结构

标准箱=基本头,方便流水线分拣;填充物=扩展头,需要时再塞;箱内货物=载荷

9第 9 页 · IPv6分组

IPv6过渡技术

IPv4 地址耗尽,IPv6 是未来;但全球 IPv4 网络不会一夜消失。新老两种协议必须长期共存——这正是过渡技术要解决的问题。

双栈技术
节点同时运行 IPv4 和 IPv6 两套协议栈,按目的地址族选择对应协议收发
隧道技术
把 IPv6 报文封装进 IPv4 报文,沿 IPv4 网络中继;典型:6to4、ISATAP、Teredo
翻译/NAT64
在边界设备上把 IPv6 与 IPv4 报文互转,让纯 v6 节点能访问 v4 服务;DNS64 配套
双语城市对应 →IPv6 过渡

双栈=双语市民两边都能走;隧道=新城区包进老城区穿过去;翻译=边界翻译官让两边对话

10第 10 页 · IPv6过渡技术

路由从何而来?

前面我们讨论了IP分组如何被转发——但路由器每次做转发决策时,路由表里那条记录到底是从哪儿冒出来的?自己长出来的?人手动写的?还是协议告诉它的?

直连路由
接口UP时自动出现,AD=0,最可信
静态路由
管理员手动配置,AD=1,固定不变
动态路由
OSPF/BGP等协议自动学习,能感知拓扑变化
管理距离(AD)
不同来源的「可信度」数值,数值越小越优先
探险家获取地形情报对应 →路由器建立路由表

亲眼走过(直连)最可信,护林员给的地图(静态)次之,向其他探险队打听(动态)补充

11第 11 页 · 路由从何而来?

距离矢量路由选择协议

上一页我们提出「路由从何而来」——每个路由器都要回答:去往每个目的地,下一跳该是谁?距离矢量是最朴素的方案:它不构造全局地图,只相信邻居的汇报。

核心思想:传闻路由
每个路由器只和邻居交换信息,通过邻居的汇报逐步拼出全网拓扑
距离度量:跳数
以经过的路由器数量作为距离,每一跳代价为1,最短即跳数最少
周期性全表通告
每隔固定时间(如RIP默认30秒)向邻居发送完整路由表副本
环路与计数到无穷
好消息传得快、坏消息传得慢,故障时路由可能震荡至跳数上限
典型协议:RIP
应用最广的距离矢量协议,跳数上限15,因此网络直径受限
向陌生人问路对应 →距离矢量路由

每个路人只告诉你到下一站有多远,没人给你完整地图;你把所有片段拼成路线

dx(y)=minvN(x){c(x,v)+dv(y)}d_x(y) = \min_{v \in N(x)} \{c(x,v) + d_v(y)\}
12第 12 页 · 距离矢量路由选择协议

本节要点

  • 分层编址=定位与路由聚合的平衡术
  • 子网掩码借位,让地址粒度按需伸缩
  • IPv6不止扩地址,更重塑了协议哲学
  • 双栈+隧道+翻译,是平滑过渡的三板斧
  • 距离矢量的「好邻居假设」,既是收敛基础也是失效边界
延伸主题:OSPF与链路状态路由协议IPv6邻居发现机制(NDP)
13第 13 页 · 本节要点

课后思考

先自己想,再点开参考答案。

1划分子网时,每个子网的可用主机地址数为什么是 2ⁿ − 2,而不是 2ⁿ?那两个被扣除的地址各承担什么角色?

参考答案一个是子网网络地址,代表整个子网本身,不能分配给具体主机;另一个是子网广播地址,向子网内所有主机发消息时使用。二者都是子网运作所必需的系统保留地址。

2一家公司有约 200 台主机,只分到一段 C 类 /24 地址。如果让你来划分子网,怎么划才能既够用又便于管理?写下你的方案。

参考答案200 台数量上刚好用满 /24,但管理上常借 1 位分为两个 /25 子网:每个容纳 126 台主机,可按部门或楼层隔离广播域;剩余地址为网关预留,方便未来扩展。

3距离矢量路由选择协议的收敛速度随网络规模变化。如果节点数极大,会演变成什么更棘手的问题?

参考答案节点只能依赖邻居的『传言』,路由变化要逐跳传播,节点多了迭代轮数大幅增加。极端时会触发『计数到无穷』,让网络长时间不稳定——这正是后来链路状态协议被提出的根本动机。

14第 14 页 · 课后思考