- IPv6 教程
- IPv6 - 首頁
- IPv6 - 概述
- IPv6 - 特性
- IPv6 - 地址模式
- IPv6 - 地址型別
- IPv6 - 特殊地址
- IPv6 - 首部
- IPv6 - 通訊
- IPv6 - 子網劃分
- IPv6 - IPv4 到 IPv6
- IPv6 - 移動性
- IPv6 - 路由
- IPv6 - 總結
- IPv6 有用資源
- IPv6 - 快速指南
- IPv6 - 有用資源
IPv6 - 首部
IPv6 的奇妙之處在於它的首部。IPv6 地址是 IPv4 地址的 4 倍,但令人驚訝的是,IPv6 地址的首部僅為 IPv4 地址首部的 2 倍。IPv6 首部包含一個固定首部和零個或多個可選(擴充套件)首部。路由器所需的所有必要資訊都儲存在固定首部中。擴充套件首部包含可選資訊,幫助路由器瞭解如何處理資料包/流。
固定首部
IPv6 固定首部長度為 40 位元組,包含以下資訊。
| 序號 | 欄位及描述 |
|---|---|
| 1 | 版本 (4 位):表示網際網路協議的版本,即 0110。 |
| 2 | 流量類 (8 位):這 8 位分為兩部分。最高有效 6 位用於服務型別,讓路由器知道應該為該資料包提供什麼服務。最低有效 2 位用於顯式擁塞通知 (ECN)。 |
| 3 | 流標籤 (20 位):此標籤用於維護屬於通訊的資料包的順序流。源對序列進行標記以幫助路由器識別特定資料包屬於特定資訊流。此欄位有助於避免資料包的重新排序。它專為流媒體/即時媒體而設計。 |
| 4 | 有效負載長度 (16 位):此欄位用於告訴路由器特定資料包在其有效負載中包含多少資訊。有效負載由擴充套件首部和上層資料組成。使用 16 位,最多可以指示 65535 位元組;但如果擴充套件首部包含逐跳擴充套件首部,則有效負載可能超過 65535 位元組,並且此欄位設定為 0。 |
| 5 | 下一個首部 (8 位):此欄位用於指示擴充套件首部的型別,或者如果不存在擴充套件首部,則指示上層 PDU。上層 PDU 型別的值與 IPv4 的相同。 |
| 6 | 跳數限制 (8 位):此欄位用於阻止資料包在網路中無限迴圈。這與 IPv4 中的 TTL 相同。跳數限制欄位的值在經過一個鏈路(路由器/跳躍)時遞減 1。當欄位達到 0 時,資料包將被丟棄。 |
| 7 | 源地址 (128 位):此欄位指示資料包發源地的地址。 |
| 8 | 目的地址 (128 位):此欄位提供資料包預期接收方的地址。 |
擴充套件首部
在 IPv6 中,固定首部僅包含必要的資訊,避免那些不需要或很少使用的資訊。所有此類資訊都以擴充套件首部的形式放在固定首部和上層首部之間。每個擴充套件首部都由一個不同的值標識。
當使用擴充套件首部時,IPv6 固定首部的下一個首部欄位指向第一個擴充套件首部。如果還有一個擴充套件首部,則第一個擴充套件首部的“下一個首部”欄位指向第二個擴充套件首部,依此類推。最後一個擴充套件首部的“下一個首部”欄位指向上層首部。因此,所有首部都以連結列表的方式指向下一個首部。
如果下一個首部欄位包含值 59,則表示此首部之後沒有其他首部,甚至沒有上層首部。
根據 RFC 2460,必須支援以下擴充套件首部
擴充套件首部的順序應為
這些首部
1. 應由第一個和後續目的地處理。
2. 應由最終目的地處理。
擴充套件首部以連結列表的方式一個接一個地排列,如下圖所示