网络层负责端到端的数据传输(Host-to-Host),核心是 IP 协议。本文整理 IPv4/IPv6 地址结构、子网划分与掩码、NAT 地址转换,以及 IP 数据报格式与分片,作为理解路由(另篇)的基础。
网络层向上为传输层提供服务,向下屏蔽底层链路差异。核心功能:
数据在传输层被分成段(Segment),网络层封装为数据报(Datagram)。
IPv4 用 32 位(4 字节)标识主机,点分十进制表示:192.168.1.1。
地址由网络号 + 主机号组成,通过网络掩码区分。
早期按首位划分 A-E 类:
| 类别 | 首字节 | 默认掩码 | 网络/主机 |
|---|---|---|---|
| A | 1-126 | /8 | 大网络,主机多 |
| B | 128-191 | /16 | 中网络 |
| C | 192-223 | /24 | 小网络,主机少 |
| D | 224-239 | - | 组播 |
| E | 240-255 | - | 保留 |
现代用 CIDR(Classless Inter-Domain Routing),以 /前缀长度 表示网络位,如 192.168.1.0/24 表示前 24 位是网络号。
子网掩码(Subnet Mask) 用于区分网络位与主机位。与 IP 地址按位"与"得到网络号。
例:192.168.1.10/24,掩码 255.255.255.0:
192.168.1.0.10子网划分:把一个大网段切成多个子网,提升地址利用与隔离。主机位再借若干位作子网号。
例:192.168.1.0/24 借 2 位主机位划 4 个子网:
192.168.1.0/26、.64/26、.128/26、.192/26特殊地址:
127.0.0.1:回环地址(localhost)。10.0.0.0/8、172.16.0.0/12、192.168.0.0/16,仅局域网内使用。IPv4 地址已耗尽,IPv6 用 128 位,冒号十六进制表示:
2001:0db8:85a3:0000:0000:8a2e:0370:7334IPv4 报头关键字段:
当数据报超过底层链路 MTU(最大传输单元,如以太网 1500 字节)时,路由器将其分片,到达目的后按标识与偏移重组。IPv6 由发送方分片,中间路由器不再分片。
NAT 让内网私有地址通过一个公网 IP 访问互联网。
优点:缓解 IPv4 地址短缺、隐藏内网结构(一定程度的安全性)。 缺点:破坏端到端模型,对点对点通信(P2P、内网穿透)不友好。
NAT 地址转换示意(内网多主机共享一个公网 IP):