索引 | 字段 | 中文 | 比特 | 说明 |
---|---|---|---|---|
1 | Version | 版本 | 4 | IPv4 的版本号是 4,因此这个字段的值也为 4。 |
2 | Internet Header Length | 首部长度 | 4 | 简称 IHL。单位为 4 字节(32 比特)。 |
3 | Type Of Service | 区分服务 | 8 | 简称 TOS。表明服务质量,比如 0 1 2 表示优先度,3 表示最低延迟。由于存在操作难度,目前几乎所有的网络都无视这些字段。 |
4 | Total Length | 总长度 | 16 | 简称 TL。单位为字节。 |
5 | Identification | 标识 | 16 | 用于分片重组。同一个分片的值相同,反之则不同。 |
6 | Flags | 标志 | 3 | 第一个比特未使用,现在必须为 0; 第二个比特指示是否分片:
第三个比特指示包被分片的情况下,是否为最后一个包:
|
7 | Fragment Offset | 片偏移 | 13 | 简称 FO。单位为 8 字节,标识被分片的每一个分段相对于原始数据的位置。 |
8 | Time To Live | 生存时间 | 8 | 简称 TTL。最初的意思是以秒为单位记录当前包在网络上应该生存的期限。实际操作中表示可以中转多少个路由器的意思。每经过一个路由器,TTL 会减少 1,直到变成 0 则丢弃该包。 |
9 | Protocol | 协议 | 8 | 表示 IP 首部的下一个首部隶属于哪一个协议。比如,TCP 是 4,UDP 是 17。 |
10 | Header Checksum | 首部校验和 | 16 | 简称 HC。校验数据报的首部,不校验数据部分。计算过程首先将校验和的所有位置设置为 0,然后以 16 比特为单位划分首部,并用 1 补数计算所有 16 位字的和。最后将所得到这个和的 1 补数赋给 HC 字段。 |
11 | Source Address | 源地址 | 32 | 发送端 IP 地址。 |
12 | Destination Address | 目标地址 | 32 | 接收端 IP 地址。 |
13 | Options | 可选字段 | 变长 | 长度可变,通常只进行实验或诊断时使用。 |
14 | Padding | 填充 | 变长 | 通过填充 0,保证首部长度是 32 比特的整数倍。 |