- IPv6 教程
- IPv6 - 首頁
- IPv6 - 概述
- IPv6 - 特性
- IPv6 - 地址模式
- IPv6 - 地址型別
- IPv6 - 特殊地址
- IPv6 - 報頭
- IPv6 - 通訊
- IPv6 - 子網劃分
- IPv6 - IPv4 到 IPv6 的轉換
- IPv6 - 移動性
- IPv6 - 路由
- IPv6 - 總結
- IPv6 有用資源
- IPv6 快速指南
- IPv6 - 有用資源
IPv6 快速指南
概述
網際網路協議第6版 (IPv6) 是一種新的定址協議,旨在滿足我們所知的網際網路版本2的未來需求。與它的前身IPv4一樣,此協議工作在網路層(第3層)。除了提供巨大的邏輯地址空間外,此協議還具有許多功能,可以解決IPv4當前的不足。
為什麼需要新的IP版本?
到目前為止,IPv4已被證明是一個強大的可路由定址協議,幾十年來一直以其盡力而為的交付機制為人類服務。它設計於80年代初期,此後沒有進行任何重大更改。在其誕生之初,網際網路僅限於少數大學用於研究以及國防部。IPv4長32位,提供約4,294,967,296 (232) 個地址。當時,這個地址空間被認為綽綽有餘。以下是促成IPv6誕生的主要因素:
網際網路呈指數級增長,IPv4允許的地址空間正在飽和。需要一種協議來滿足未來網際網路地址的需求,而這些地址預計將以意想不到的方式增長。
使用NAT等功能使網際網路變得不連續,即屬於內網的一部分主要使用私有IP地址;它必須透過許多機制才能到達另一部分,即使用公共IP地址的網際網路。
IPv4本身不提供任何安全功能,這使其容易受到攻擊,因為網際網路上的資料(公共領域)從來都不安全。資料必須使用其他安全應用程式進行加密才能傳送到網際網路。
IPv4中的資料優先順序不夠先進。儘管IPv4保留了一些位用於服務型別或服務質量,但它們提供的功能並不多。
IPv4啟用客戶端可以手動配置,或者需要某種地址配置機制。不存在可以配置裝置具有全域性唯一IP地址的技術。
為什麼不是IPv5?
迄今為止,網際網路協議只被認為是IPv4。版本0到3是在協議本身處於開發和實驗階段時使用的。因此,我們可以假設在將協議投入生產之前,許多後臺活動仍然活躍。類似地,在對網際網路流協議進行實驗時使用了協議版本5。它被稱為網際網路流協議,使用網際網路協議編號5來封裝其資料報。雖然它從未投入公共使用,但它已經被使用過。
這是一張IP版本及其用途的表格
簡史
在IPv4於80年代初開發之後,隨著網際網路對地址的需求呈指數級增長,可用的IPv4地址池開始迅速減少。考慮到可能出現的情況,IETF於1994年啟動了替代IPv4的定址協議的開發。IPv6的進展可以透過釋出的RFC來跟蹤。
1998 – RFC 2460 – 基本協議
2003 – RFC 2553 – 基本套接字API
2003 – RFC 3315 – DHCPv6
2004 – RFC 3775 – 移動IPv6
2004 – RFC 3697 – 流標籤規範
2006 – RFC 4291 – 地址體系結構(修訂版)
2006 – RFC 4294 – 節點需求
2012年6月,一些網際網路巨頭選擇將他們的伺服器部署在IPv6上。目前,他們正在使用雙協議棧機制來並行實現IPv6和IPv4。
特性
IPv4的繼任者並非設計為向後相容的。IPv6在保持IP定址基本功能的同時,進行了徹底的重新設計。它提供以下特性:
更大的地址空間
與IPv4相比,IPv6使用多4倍的位來定址網際網路上的裝置。如此多的額外位可以提供大約3.4×1038種不同的地址組合。這個地址可以滿足幾乎世界上所有事物對地址分配的巨大需求。據估計,可以為地球上每一平方米分配1564個地址。
簡化的報頭
IPv6的報頭透過將所有不必要的資訊和選項(存在於IPv4報頭中)移動到IPv6報頭的末尾來簡化。考慮到IPv6地址是IPv4地址的四倍長,IPv6報頭的大小僅比IPv4報頭大兩倍。
端到端連線
每個系統現在都有唯一的IP地址,並且可以無需使用NAT或其他轉換元件即可遍歷網際網路。在IPv6完全實施後,每個主機都可以直接到達網際網路上的其他主機,但有一些限制,例如防火牆、組織策略等。
自動配置
IPv6支援其主機裝置的有狀態和無狀態自動配置模式。這樣,DHCP伺服器的缺失不會中斷段間通訊。
更快的轉發/路由
簡化的報頭將所有不必要的資訊放在報頭的末尾。報頭第一部分中的所有資訊都足以讓路由器做出路由決策,從而使路由決策速度與檢視強制性報頭一樣快。
IPSec
最初決定IPv6必須具有IPSec安全性,使其比IPv4更安全。此功能現在已成為可選功能。
無廣播
儘管乙太網/令牌環被認為是廣播網路,因為它們支援廣播,但IPv6不再支援任何廣播功能。它使用組播與多個主機通訊。
組播支援
這是IPv6的另一個特性。IPv6引入了組播分組路由模式。在此模式下,網際網路上的多個介面被分配相同的組播IP地址。路由器在路由時,將資料包傳送到最近的目標。
移動性
IPv6的設計考慮了移動性功能。此功能使主機(例如行動電話)能夠在不同的地理區域漫遊並保持與同一IP地址的連線。IPv6移動性功能利用自動IP配置和擴充套件報頭。
增強的優先順序支援
IPv4使用6位DSCP(差異化服務程式碼點)和2位ECN(顯式擁塞通知)來提供服務質量,但只有在端到端裝置支援的情況下才能使用它,也就是說,源裝置和目標裝置以及底層網路必須支援它。
在IPv6中,流量類和流標籤用於告訴底層路由器如何有效地處理資料包並對其進行路由。
平滑過渡
IPv6中大型IP地址方案能夠為裝置分配全域性唯一的IP地址。這確保不需要NAT等節省IP地址的機制。因此,裝置可以彼此之間傳送/接收資料,例如VoIP和/或任何流媒體都可以更有效地使用。
另一個事實是,報頭負載較輕,因此路由器可以快速做出轉發決策並轉發它們。
可擴充套件性
IPv6報頭的一個主要優點是它可以擴充套件到在選項部分新增更多資訊。IPv4僅為選項提供40位元組,而IPv6中的選項可以達到IPv6資料包本身的大小。
地址模式
在計算機網路中,地址模式是指我們如何定址網路上的主機。IPv6提供了幾種模式,透過這些模式可以定址單個主機,可以一次定址多個主機,或者可以定址距離最近的主機。
單播
在單播定址模式下,IPv6介面(主機)在網路段中被唯一標識。IPv6資料包包含源IP地址和目標IP地址。主機介面配備了一個在該網路段中唯一的IP地址。網路交換機或路由器在接收到一個目的地址為單個主機的單播IP資料包時,會將其傳送到連線到該特定主機的其中一個輸出介面。
組播
IPv6組播模式與IPv4相同。發往多個主機的分組將傳送到一個特殊的組播地址。所有對該組播資訊感興趣的主機都需要首先加入該組播組。所有已加入該組的介面都接收組播分組並對其進行處理,而對組播分組不感興趣的其他主機則忽略該組播資訊。
組播
IPv6引入了一種新的定址型別,稱為組播定址。在此定址模式下,多個介面(主機)被分配相同的組播IP地址。當主機希望與配備組播IP地址的主機通訊時,會發送單播訊息。藉助複雜的路由機制,該單播訊息將被傳遞給距離傳送方最近的主機(就路由成本而言)。
讓我們以位於所有大陸的TutorialPoints.com Web伺服器為例。假設所有Web伺服器都被分配了單個IPv6組播IP地址。現在,當來自歐洲的使用者想要訪問TutorialsPoint.com時,DNS會指向物理上位於歐洲本身的伺服器。如果來自印度的使用者嘗試訪問Tutorialspoint.com,則DNS將指向物理上僅位於亞洲的Web伺服器。最近或最接近的術語是指路由成本。
在上圖中,當客戶端計算機嘗試連線伺服器時,請求將轉發到具有最低路由成本的伺服器。
地址型別
十六進位制數系統
在介紹 IPv6 地址格式之前,我們先了解一下十六進位制數系統。十六進位制是一種位置計數系統,使用 16 作為基數(底數)。為了以可讀的格式表示值,該系統使用 0-9 符號表示從零到九的值,並使用 A-F 符號表示從十到十五的值。十六進位制中的每個數字可以表示 0 到 15 的值。
地址結構
IPv6 地址由 128 位組成,分為八個 16 位塊。然後,每個塊轉換為由冒號分隔的 4 位十六進位制數字。
例如,以下是二進位制格式的 128 位 IPv6 地址,分為八個 16 位塊
0010000000000001 0000000000000000 0011001000110100 1101111111100001 0000000001100011 0000000000000000 0000000000000000 1111111011111011
然後將每個塊轉換為十六進位制,並用“:”符號分隔
2001:0000:3238:DFE1:0063:0000:0000:FEFB
即使轉換為十六進位制格式,IPv6 地址仍然很長。IPv6 提供了一些規則來縮短地址。這些規則是
規則 1:丟棄前導零
在塊 5,0063 中,可以省略前導兩個 0,例如(第 5 塊)
2001:0000:3238:DFE1:63:0000:0000:FEFB
規則 2:如果兩個或多個塊包含連續的零,則全部省略它們並用雙冒號 :: 替換,例如(第 6 塊和第 7 塊)
2001:0000:3238:DFE1:63::FEFB
連續的零塊只能用 :: 替換一次,因此如果地址中仍然存在零塊,則可以將其縮減為單個零,例如(第 2 塊)
2001:0:3238:DFE1:63::FEFB
介面 ID
IPv6 有三種不同的單播地址方案型別。地址的後半部分(最後 64 位)始終用於介面 ID。系統的 MAC 地址由 48 位組成,並以十六進位制表示。MAC 地址被認為是全球唯一分配的。介面 ID 利用了 MAC 地址的這種唯一性。主機可以使用 IEEE 的擴充套件唯一識別符號 (EUI-64) 格式自動配置其介面 ID。首先,主機將其自身的 MAC 地址分成兩個 24 位的半部分。然後將 16 位十六進位制值 0xFFFE 插入到 MAC 地址的這兩個半部分中,從而產生 64 位介面 ID。
全域性單播地址
此地址型別相當於 IPv4 的公共地址。IPv6 中的全域性單播地址是全球可識別的和唯一可定址的。
全域性路由字首:最重要的 48 位被指定為全域性路由字首,它分配給特定的自治系統。全域性路由字首最重要的三位始終設定為 001。
鏈路本地地址
自動配置的 IPv6 地址稱為鏈路本地地址。此地址始終以 FE80 開頭。鏈路本地地址的前 16 位始終設定為 1111 1110 1000 0000 (FE80)。接下來的 48 位設定為 0,因此
鏈路本地地址僅用於鏈路(廣播段)上的 IPv6 主機之間的通訊。這些地址不可路由,因此路由器永遠不會將這些地址轉發到鏈路之外。
唯一本地地址
這種型別的 IPv6 地址雖然在全球範圍內是唯一的,但應該用於本地通訊。此地址的後半部分是介面 ID,前半部分則分為字首、本地位、全域性 ID 和子網 ID。
字首始終設定為 1111 110。如果地址是本地分配的,則 L 位設定為 1。到目前為止,L 位為 0 的含義尚未定義。因此,唯一本地 IPv6 地址始終以“FD”開頭。
IPv6 單播地址的作用域
鏈路本地地址的作用域僅限於該段。唯一本地地址雖然在本地是全域性的,但不會透過網際網路路由,將其作用域限制在組織的邊界內。全域性單播地址是全球唯一且可識別的。它們將構成網際網路 v2 定址的本質。
特殊地址
版本 6 的 IP 地址結構比 IPv4 稍微複雜一些。IPv6 為特殊目的保留了一些地址和地址表示法。請參見下表
特殊地址
如上表所示,0:0:0:0:0:0:0:0/128 地址未指定任何內容,據說是一個未指定的地址。簡化後,所有 0 都壓縮為 ::/128。
在 IPv4 中,地址 0.0.0.0 和子網掩碼 0.0.0.0 表示預設路由。同樣的概念也適用於 IPv6,地址 0:0:0:0:0:0:0:0 和全 0 子網掩碼錶示預設路由。應用 IPv6 簡化規則後,此地址被壓縮為 ::/0。
IPv4 中的環回地址由 127.0.0.1 到 127.255.255.255 系列表示。但在 IPv6 中,只有 0:0:0:0:0:0:0:1/128 地址表示環回地址。簡化環回地址後,可以表示為 ::1/128。
為路由協議保留的多播地址
上表顯示了內部路由協議使用的保留多播地址。
所有地址都以類似於 IPv4 的方式保留
為路由器/節點保留的多播地址
這些地址幫助路由器和主機與段上的可用路由器和主機通訊,而無需配置 IPv6 地址。主機使用基於 EUI-64 的自動配置來自動配置 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. 應由最終目標處理。
擴充套件報頭以連結串列的方式一個接一個地排列,如下圖所示
通訊
在 IPv4 中,想要與網路上其他主機通訊的主機首先需要透過 DHCP 或手動配置獲得 IP 地址。一旦主機配備了有效的 IP 地址,它現在就可以與子網上的任何主機通訊。要在第 3 層進行通訊,主機還必須知道其他主機的 IP 地址。鏈路上的通訊是透過嵌入式硬體 MAC 地址建立的。為了知道已知 IP 地址的主機的 MAC 地址,主機發送 ARP 廣播,而目標主機則會發送回其 MAC 地址。
在 IPv6 中,沒有廣播機制。啟用 IPv6 的主機不必從 DHCP 獲取 IP 地址或手動配置,但它可以自動配置自己的 IP。那麼,主機如何在啟用 IPv6 的網路上與其他主機通訊呢?
ARP已被IPv6鄰居發現協議取代。
鄰居發現協議
IPv6網路中的主機能夠自動配置具有唯一鏈路本地地址。一旦它配備了IPv6地址,它就會加入多個多播組。與該網段相關的所有通訊僅發生在這些多播地址上。主機在IPv6中經歷一系列狀態
鄰居請求(Neighbor Solicitation):在手動或透過DHCP伺服器或自動配置配置所有IPv6地址後,主機向FF02::1/16多播地址傳送鄰居請求訊息,用於其所有IPv6地址,以確認沒有其他主機佔用相同的地址。
地址重複檢測(DAD, Duplicate Address Detection):當主機未從網段收到任何關於其鄰居請求訊息的響應時,它假設網段上不存在重複地址。
鄰居通告(Neighbor Advertisement):在將其地址分配給介面並使其執行後,主機再次傳送鄰居通告訊息,告知網段上的所有其他主機它已將其IPv6地址分配給其介面。
一旦主機完成其IPv6地址的配置,它會執行以下操作
路由器請求(Router Solicitation):主機向其網段傳送路由器請求多播資料包(FF02::2/16),以瞭解該網段上是否存在任何路由器。這有助於主機將其配置為預設閘道器。如果其預設閘道器路由器出現故障,主機可以切換到新的路由器並將其設定為預設閘道器。
路由器通告(Router Advertisement):當路由器收到路由器請求訊息時,它會回覆主機,在其鏈路上通告其存在。
重定向(Redirect):這種情況可能是路由器接收到路由器請求,但它知道它並非主機最佳閘道器。在這種情況下,路由器會發送重定向訊息,告知主機存在更好的“下一跳”路由器。下一跳是主機將傳送其目標主機不在同一網段的資料包的地方。
子網劃分
在IPv4中,地址是按類別建立的。分級IPv4地址清楚地定義了用於網路字首的位和用於該網路上的主機的位。要在IPv4中進行子網劃分,我們可以使用預設的分級網路掩碼,這允許我們借用主機位用作子網位。這導致多個子網,但每個子網的主機數量減少。也就是說,當我們借用主機位來建立子網時,這會讓我們減少可用於主機地址的位數。
IPv6地址使用128位來表示地址,其中包括用於子網劃分的位。地址的後半部分(最低有效64位)始終僅用於主機。因此,如果我們對網路進行子網劃分,則不會有任何損失。
16位的子網相當於IPv4的B類網路。使用這些子網位,一個組織可以擁有超過65000個子網,這遠遠足夠了。
因此路由字首是/64,主機部分是64位。但是,我們可以在16位子網ID之外進一步對網路進行子網劃分,借用主機位,但建議始終使用64位作為主機地址,因為自動配置需要64位。
IPv6子網劃分的工作原理與IPv4中的可變長度子網掩碼相同。
/48字首可以分配給一個組織,使其能夠擁有多達/64個子網字首,即65535個子網,每個子網擁有264個主機。/64字首可以分配給點對點連線,其中鏈路上只有兩個主機(或啟用IPv6的裝置)。
IPv4到IPv6
從IPv4完全過渡到IPv6的一個問題是IPv6不向後相容。這導致出現這種情況:站點要麼使用IPv6,要麼不使用。這與新技術的實現不同,在新技術中,較新的技術向後相容,因此較舊的系統無需任何額外更改即可與較新的系統一起工作。
為了克服這一缺點,存在一些技術可用於從IPv4到IPv6的緩慢平滑過渡
雙協議棧路由器
可以在路由器上安裝配置了其介面上指向相關IP方案網路的IPv4和IPv6地址的路由器。
在上圖中,伺服器同時配置了IPv4和IPv6地址,現在可以藉助雙協議棧路由器與IPv4網路和IPv6網路上的所有主機通訊。雙協議棧路由器可以與兩個網路通訊,併為主機提供訪問伺服器的媒介,而無需更改其各自的IP版本。
隧道
在中間路徑或傳輸網路上存在不同IP版本的情況下,隧道提供了一種更好的解決方案,使用者資料可以透過不支援的IP版本。
上圖描述瞭如何透過隧道使兩個遠端IPv4網路通訊,其中傳輸網路位於IPv6上。反之亦然,傳輸網路位於IPv6上,而打算通訊的遠端站點位於IPv4上。
NAT協議轉換
這是透過啟用NAT-PT(網路地址轉換-協議轉換)的裝置過渡到IPv6的另一種重要方法。藉助NAT-PT裝置,IPv4和IPv6資料包之間會發生實際轉換,反之亦然。請參見下圖
具有IPv4地址的主機向網際網路上啟用了IPv6的伺服器傳送請求,該伺服器不理解IPv4地址。在這種情況下,NAT-PT裝置可以幫助它們進行通訊。當IPv4主機向IPv6伺服器傳送請求資料包時,NAT-PT裝置/路由器會剝離IPv4資料包,刪除IPv4報頭並新增IPv6報頭,然後將其透過網際網路傳輸。當來自IPv6伺服器的響應到達IPv4主機時,路由器會反向操作。
移動性
當主機連線到一個鏈路或網路時,它會獲取一個IP地址,所有通訊都使用該鏈路上的該IP地址進行。一旦同一主機更改其物理位置,即移動到不同的區域/子網/網路/鏈路,其IP地址會相應更改,並且使用舊IP地址在主機上進行的所有通訊都會中斷。
IPv6移動性提供了一種機制,該機制使主機能夠在不同的鏈路之間漫遊,而不會丟失任何通訊/連線及其IP地址。
這項技術涉及多個實體
移動節點(Mobile Node):需要IPv6移動性的裝置。
家庭鏈路(Home Link):此鏈路配置了家庭子網字首,這是移動IPv6裝置獲取其家庭地址的地方。
家庭地址(Home Address):這是移動節點從家庭鏈路獲取的地址。這是移動節點的永久地址。如果移動節點保留在同一家庭鏈路上,則各種實體之間的通訊照常進行。
家庭代理(Home Agent):這是一個充當移動節點註冊器的路由器。家庭代理連線到家庭鏈路並維護有關所有移動節點、其家庭地址及其當前IP地址的資訊。
外部鏈路(Foreign Link):任何不是移動節點家庭鏈路的鏈路。
關照地址(Care-of Address):當移動節點連線到外部鏈路時,它會獲取外部鏈路子網的新IP地址。家庭代理維護家庭地址和關照地址的資訊。可以為移動節點分配多個關照地址,但在任何情況下,只有一個關照地址與家庭地址繫結。
對應節點(Correspondent Node):任何打算與移動節點通訊的IPv6啟用裝置。
移動操作
當移動節點停留在其家庭鏈路中時,所有通訊都發生在其家庭地址上。如下所示
當移動節點離開其家庭鏈路並連線到某個外部鏈路時,IPv6的移動性功能開始發揮作用。連線到外部鏈路後,移動節點會從外部鏈路獲取IPv6地址。此地址稱為關照地址。移動節點向其家庭代理傳送繫結請求,其中包含新的關照地址。家庭代理將移動節點的家庭地址與關照地址繫結,在兩者之間建立隧道。
每當對應節點嘗試與移動節點(在其家庭地址上)建立連線時,家庭代理都會攔截資料包並透過已建立的隧道將其轉發到移動節點的關照地址。
路由最佳化
當對應節點透過向移動節點的家庭地址傳送資料包來啟動通訊時,這些資料包會由家庭代理透過隧道傳輸到移動節點。在路由最佳化模式下,當移動節點從對應節點接收資料包時,它不會將回復轉發給家庭代理。而是使用家庭地址作為源地址直接將其資料包傳送到對應節點。此模式是可選的,預設情況下不使用。
路由
在IPv6的情況下,路由概念保持不變,但幾乎所有路由協議都已相應地重新定義。我們已經看到了IPv6網段中的通訊,主機如何與其閘道器通訊。路由是一個轉發可路由資料,在到達目的地的多個可用路由或路徑中選擇最佳路徑的過程。路由器是一種轉發並非明確將其作為目標的資料的裝置。
存在兩種形式的路由協議
距離向量路由協議(Distance Vector Routing Protocol):執行距離向量協議的路由器會通告其連線的路由,並從其鄰居那裡學習新的路由。到達目的地的路由成本是透過源和目的地之間的跳數來計算的。路由器通常依賴其鄰居進行最佳路徑選擇,也稱為“透過謠言進行路由”。RIP和BGP是距離向量協議。
鏈路狀態路由協議(Link-State Routing Protocol):此協議確認鏈路的狀態並向其鄰居通告。有關新鏈路的資訊是從對等路由器學習的。在所有路由資訊都收斂後,鏈路狀態路由協議使用其自身的演算法來計算到所有可用鏈路的最佳路徑。OSPF和IS-IS是鏈路狀態路由協議,兩者都使用Dijkstra最短路徑優先演算法。
路由協議可以分為兩類
內部路由協議(Interior Routing Protocol):此類別的協議用於自治系統或組織內部,用於在其邊界內的所有路由器之間分發路由。示例:RIP、OSPF。
外部路由協議(Exterior Routing Protocol):而外部路由協議則在兩個不同的自治系統或組織之間分發路由資訊。示例:BGP。
路由協議
RIPng
RIPng代表下一代路由資訊協議。這是一個內部路由協議,也是一個距離向量協議。RIPng已升級為支援IPv6。
OSPFv3
BGPv4
BGP代表邊界閘道器協議。它是唯一可用的開放標準外部閘道器協議。BGP是一個距離向量協議,它採用自治系統作為計算度量,而不是像跳數那樣計算路由器的數量。BGPv4是BGP的升級版本,支援IPv6路由。
開放最短路徑優先版本3是一個內部路由協議,已修改為支援IPv6。這是一個鏈路狀態協議,使用Dijkstra最短路徑優先演算法來計算到所有目的地的最佳路徑。
已更改為支援IPv6的協議
ICMPv6:網際網路控制訊息協議版本6是ICMP的升級實現,用於滿足IPv6的要求。此協議用於診斷功能、錯誤和資訊訊息以及統計目的。ICMPv6的鄰居發現協議取代了ARP,並有助於發現鏈路上的鄰居和路由器。
DHCPv6:動態主機配置協議版本 6 是 DHCP 的一種實現。儘管啟用 IPv6 的主機不需要任何 DHCPv6 伺服器來獲取 IP 地址,因為它們可以自動配置。它們也不需要 DHCPv6 來查詢 DNS 伺服器,因為可以透過 ICMPv6 鄰居發現協議發現和配置 DNS。但是,DHCPv6 伺服器可以用來提供這些資訊。
DNS:DNS 沒有新的版本,但它現在配備了擴充套件功能,可以支援查詢 IPv6 地址。添加了一個新的 AAAA(四 A)記錄來回復 IPv6 查詢訊息。現在,DNS 可以回覆兩種 IP 版本(4 和 6),而無需更改查詢格式。
摘要
IPv4 自 1982 年以來一直是網際網路無可爭議的領導者。隨著 IPv4 地址空間的耗盡,IPv6 現在正在接管網際網路的控制權,這被稱為 Internet2。
IPv4 已廣泛部署,遷移到 IPv6 並非易事。到目前為止,IPv6 滲透 IPv4 地址空間的比例不到 1%。
2011 年 6 月 8 日,世界各地慶祝了“世界 IPv6 日”,目的是全面測試網際網路上的 IPv6 地址。2012 年 6 月 6 日,網際網路社群正式啟動了 IPv6。這一天,所有提供 IPv6 的 ISP 都要在公共領域啟用它,並保持啟用狀態。所有裝置製造商也參與其中,預設在裝置上啟用 IPv6。
這是鼓勵網際網路社群遷移到 IPv6 的一步。
為組織提供了許多從 IPv4 遷移到 IPv6 的方法。此外,希望在完全遷移之前測試 IPv6 的組織可以同時執行 IPv4 和 IPv6。不同 IP 版本的網路可以通訊,並且可以使用隧道傳輸使用者資料。
IPv6 的未來
啟用 IPv6 的 Internet 版本 2 將取代今天的 IPv4 網際網路。當網際網路使用 IPv4 啟動時,美國和歐洲等發達國家為在其各自國家部署網際網路預留了更大的 IPv4 空間,考慮到未來的需求。但網際網路在世界各地蓬勃發展,連線了世界上的每一個國家,從而增加了對 IPv4 地址空間的需求。結果,直到今天,美國和歐洲仍然擁有許多剩餘的 IPv4 地址空間,而印度和中國則必須透過部署 IPv6 來滿足其 IP 空間的需求。
大部分 IPv6 部署工作都在美國和歐洲以外進行。印度和中國正在努力將其整個空間更改為 IPv6。中國已經宣佈了一項為期五年的部署計劃,名為“中國下一代網際網路”。
2012 年 6 月 6 日之後,所有主要的 ISP 都已遷移到 IPv6,其餘的仍在遷移中。
IPv6 提供了充足的地址空間,旨在擴充套件今天的網際網路服務。功能豐富的 IPv6 啟用 Internet 版本 2 可能會帶來超出預期的成果。