1. 程式人生 > >IPv6地址技術

IPv6地址技術

結構

全球路由字首:全域性路由字首為提供商分配給客戶或場點的地址字首(網路部分)。
子網ID:組織使用子網ID表示其場點的子網。
介面ID:類似於IPv4的主機號。使用術語‘介面ID’是因為單臺主機可能有多個介面,而每個介面又有一個或多個IPv6地址。

格式

首選格式:將128位二進位制數按每16位劃分為一組,可以劃分為8個組,每組使用四位16進位制整數表示,各組之間用冒號相隔。[X:X:X:X:X:X:X:X]
壓縮格式:對每個"組"進行化簡,將無關緊要的'0'去除掉
內嵌格式:規定當地址中存在一個或多個連續的16的倍數個位元的字元'0'時,可以使用兩個冒號(雙冒號)表示,注意在內嵌格式中只允許出現一個雙冒號,如果出現兩個雙冒號,那麼兩個雙冒號各代表了幾位0就會存在二義性。
例:


原始資料:
1010101111001101 0000101010111100 0000000010101011 0000000000001010
0000000000000000 0000000000000000 0000000000000000 0001000000000000
首選格式:ABCD:0ABC:00AB:000A:0000:0000:0000:1000
壓縮格式:ABCD:ABC:AB:A:0:0:0:1000
內嵌格式:ABCD:ABC:AB:A::1000
IPv6採用類似於IPv4中的無分間路由CIDR機制中的地址字首,地址字首用來標識網路,子網和路由(選路)。
格式:{字首/介面識別符號}
字首類比IPv4中的網路號,介面識別符號類比IPv4中的主機號。

全球IPv6地址規劃:


注:為了方便檢視,字首(內嵌)一欄沒有完全按照內嵌規則來寫。

 

EUI-64規範

        由裝置將48位元的MAC地址轉化為64位元的介面識別符號(MAC唯一所以介面識別符號也唯一)。
例:


MAC地址:00:11:22:33:44:55
二進位制:00000000 00010001 00100010 00110011 01000100 01010101
插入FFFE:00000000 00010001 00100010 11111111 11111110 00110011 01000100 01010101
反轉U/L位:00000010 00010001 00100010 11111111 11111110 00110011 01000100 01010101(也就是第七位)
EUI-64地址:0211:22FF:FE33:4455
        根據使用的作業系統,裝置可以隨機生成介面ID,而不使用MAC地址和EUI-64流程。WindowsXP和之前的Windows作業系統都使用EUI-64。

分類

單播地址:

        用來標識單一網路介面。一個節點可以具有多個IPv6網路介面,每個介面必須有一個與之相關的單播地址,一個IPv6單播地址可以看成是一個兩欄位實體,其中一個欄位用來標識網路,另一個欄位用來標識該網路上節點的介面。網路識別符號可被劃分為幾部分,分別標識不同的網路部分。IPv6單播地址的型別包括:
(1)全域性單播地址
        這些地址具有全域性唯一性,是 Internet 可路由的地址。全域性單播地址可以靜態配置,也可動態分配。裝置動態獲得IPv6地址的方式與IPv4的DHCP相比有重要差異。


ISP提供商分配的字首:佔3位,標註著全球5個ISP。
站點拓撲:組織機構使用提供商分配的一個48位字首,可以用字首的第49~64(一共16位)劃分子網。
介面ID:介面識別符號
(2)本地鏈路地址
        本地鏈路地址用於與同一鏈路中的其他裝置通訊。在IPv6中,術語鏈路指的是子網。本地鏈路地址僅限於單個鏈路。它們的唯一性僅在該鏈路上得到保證,因為它們在該鏈路之外不具有可路由性。換句話說,路由器不會轉發將本地鏈路地址用作源地址或目的地址的資料包。
 

        裝置自動生成,在本地網路中使用,字首FE80::/64是特定的,後64位是EUI-64地址
(3)本地站點地址:

        相當於IPv4中的私網地址,應用範圍受限,僅能在一個單位的網路內使用,本地站點地址可以供任何沒有申請ISP提供商分配的可聚合類全球單播地址的組織機構和單位使用。
(4)環回地址
        主機使用環回地址傳送資料包到其自身,環回地址不能分配給物理介面。與IPv4環回地址類似,您可以 ping IPv6環回地址,以測試本地主機的TCP/IP配置。Pv6環回地址除最後一位外全為0,使用壓縮格式表示為::1/128或::1
(5)未指定地址
        未指定地址是全0地址,使用壓縮格式表示為::/128或::。它不能分配給介面,僅可作為IPv6資料包的源地址。在裝置尚無永久IPv6地址或資料包的源地址與目的地址不相關時,將未指定地址用作源地址。
(6)唯一本地地址
        IPv6唯一本地地址與IPv4的私有地址具有相似之處,但也有重大差異。唯一本地地址在一個場點內或有限場點之間用作本地地址。這些地址在全域性IPv6中不具有可路由性。唯一本地地址的範圍從FC00::/7~FDFF::/7。
在IPv4中,使用NAT/PAT將多個私有地址轉換為一個公有地址。這樣做是由於Iv4地址空間有限。許多場點也利用地址的私有性質來幫助保護或隱藏網路,使其免遭潛在的安全風險。然而,這絕不是開發這些技術的初衷,IETF始終推薦各場點在面向 Internet 的路由器上採取妥善的安全預防措施。雖然,IPv6的確提供了特定場點編址,但其初衷並非對IPv6 intemet 隱藏支援Pv6的內部裝置。IETF建議通過採用適當的最佳實踐安全措施來限制對裝置的訪間。
(7)IPv4嵌入式地址
        這些地址有助於IPv4向IPv6的過濾。IPv6的最低32位可以用於表示IPv4地址,該地址可以按照一種混合方式表示:[X:X:X:X:X:X:D.D.D.D],其中X代表16位二進位制數,D代表8位二進位制數。例如:[::10.6.65.120]就是一個合法的IPv4地址。
        IPv6提供兩類嵌有IPv4地址的特殊地址。這兩類地址高80位均為'0',低32位為IPv4地址。當中間16位被置為FFFF時,表示該地址為IPv4映像的IPv6地址。
IPv4相容地址:被節點用於通過IPv4路由器並以隧道方式傳送IPv6包。這些節點即能解析IPv4又能解析IPv6
IPv4映像地址:被IPv6節點用於訪問只支援IPv4的節點

多播地址:

        用來標識一組網路介面(通常屬於不同的節點),替代了IPv4中的廣播地址。用最高8位是11111111二進位制位組合來標識多播地址。多播地址只能用作目的地址。
標誌位:用來標識永久(permanent)或臨時(transient)多播組
範圍:限制多播資料流在網路中傳送位置,例如多播組是隻包括同一本地網、同一站點、同一機構的節點,還是包括IPv6全球空間中任何位置的節點。
組ID:表示多播組的序列號,用來標識多播組。
分配的多播地址
FF02::1 全節點多播組:這是一個包含所有支援IPv6的裝置的多播組。傳送到該組的資料包由該鏈路或網路上的全部IPv6介面接收和處理。這與IPv4中的廣播地址具有相同的效果。IPv6路由器將 Internet 控制訊息協議第6版(ICMPv6)RA訊息傳送給全節點多播組。RA訊息通知網路中所有支援IPv6的裝置有關路由的資訊,如字首、字首長度和預設閘道器。
FF02::2 所有路由多播組:這是一個所有IPv6路由器都會加入的多播組。使用ipv6 unicast - routing 全域性配置命令將路由器配置為IPv6路由器後,該路由器即成為該多播組的一員。傳送到該組的資料包由該鏈路或網路上的所有IPv6路由器接收和處理。
        支援IPv6的裝置傳送 ICMPv6路由器請求(RS)訊息到所有路由器多播地址。RS訊息請求Pv6路由器發出RA訊息,以幫助裝置配置地址。
IPV6請求節點多播地址
        請求節點多播地址類似於全節點多播地址。全節點多播地址在本質上與Pv4廣播相同。網路中的所有裝置都必須處理髮送到全節點地址的流量。要減少必須處理流量的裝置數量,可使用請求節點多播地址。
請求節點多播地址是僅與裝置IPv6全域性單播地址的最後24位匹配的地址。需要處理這些資料包的裝置僅是介面ID具有相同最低24位(最右邊的部分)的裝置。
        分配全域性單播或本地鏈路單播地址後,會自動建立IPv6請求節點多播地址。Pv6請求節點多播地址的建立方法是,合併字首FF02:0:0:0:0:1:FF00::/104和單播地址最右邊的24位。
請求節點多播地址由以下兩部分組成:
FF02:0:0:0:0:1:FF00::/104多播字首:這是請求節點多播地址的前104位。
最低24位:這是請求節點多播地址的最後(最右邊)24位。這些位是從裝置的全域性單播或鏈路本地地址的最右邊24位複製而來的。多臺裝置的請求節點多播地址可能相同。雖然少見,但當裝置的介面ID的最後24位相同時,就出現這種情況。這不會造成任何問題,因為裝置依然會處理封裝的訊息,其中包含目標裝置的IPv6地址。

任播地址:

        用來標識一組網路介面,IPv6任意播地址是可分配給多臺裝置的IPv6單播地址。傳送至任意播地址的資料包會路由到擁有該地址的最近裝置。

IPv4與IPv6對比

IPv6地址配置

全狀態自動配置:在IPv4中DHCP實現了IP地址的自動設定,IPv6繼承了IPv4的這種自動配置服務,並將其稱為全狀態自動配置。
無狀態自動配置:首先主機將其網絡卡MAC地址附加在鏈路本地地址字首1111 1110 10之後產生一個本地鏈路地址,併發出一個ICMPv6鄰居發現報文,用來驗證其地址的唯一性,如果請求沒有迴應,則表明主機自我配置的本地鏈路地址是唯一的。否則,主機將使用一個隨機產生的介面ID組成一個新的本地鏈路地址。獲得本地鏈路地址後,主機以該地址為源地址,向本地鏈路中所有路由器組播ICMPv6路由請求報文,路由器以一個包含可聚合全球單播地址字首的路由器公告報文響應。主機從路由器得到的地址字首加上自己的介面ID,自動配置一個全球單播地址。

地址分配

全球有5個RIR負責所在的區域的IPv6的地址分配
歐洲網路資訊中心(RIPE-NCC):負責歐洲、中東、部分亞洲地區的地址分配
亞太網際網路絡資訊中心(APNIC):負責亞洲和太平洋地區的地址分配
非洲網際網路絡資訊中心(AfriNIC):負責非洲地區的地址分配
美洲網路編號註冊局(ARIN):負責加拿、美國以及加勒比海和北大西洋的一些島嶼的地址分配
拉丁美洲和加勒比網際網路絡資訊中心(LACNIC):負責拉丁美洲和加勒比海地區的地址分配