網路協議 | |
應用層 | |
---|---|
DHCP · DNS · FTP · Gopher · HTTP · IMAP4 · IRC · NNTP · XMPP · POP3 · SIP · SMTP · SNMP · SSH · TELNET · RPC · RTCP · RTP ·RTSP · SDP · SOAP · GTP · STUN · NTP · SSDP · 更多 | |
傳輸層 | |
TCP · UDP · TLS · DCCP · SCTP · RSVP · PPTP · 更多 | |
網路層 | |
IP (IPv4 · IPv6) · OSPF · BGP · IS-IS · IPsec · 更多 | |
資料連結層 | |
802.11 · 802.16 · Wi-Fi · WiMAX · ARP · RARP · ATM · DTM · 令牌環 · 乙太網 · FDDI · 訊框中繼 · GPRS · EVDO · HSPA · HDLC · PPP · L2TP · ISDN · 更多 | |
實體層 | |
乙太網路 · 數據機 · PLC(Power Line Communication) · SONET/SDH · G.709 · 光導纖維 · 同軸電纜 · 雙絞線 · 更多 | |
IPv6是網際網路協議第四版(IPv4)的更新版;最初它在IETF的
IPng選取過程中勝出時稱為網際網路下一代網際協議(IPng),IPv6是被正式廣泛使用的第二版網際網路協議。
現有標準IPv4只支持大概40億(232)個網路地址,而IPv6支持2128(約3.4
×1038)個,這等價於在地球上每平方英寸有4.3×1020地址(6.7×1017地址/mm2)。(IPv5不是IPv4的繼承,而是實驗性的面向流的數據流協議,用來對聲音,圖像等提供支持。)
促使IPv6形成的主要原因是網路空間的匱乏。從1990年開始,網際網路工程任務小組(Internet
Engineering Task Force,簡稱IETF)開始規劃IPv4的下一代協定,除要解決即將遇到的IP位址短缺問題外,還要發展更多的擴充功能,為此IETF小組創建IPng,以讓後續工作順利進行。1994年,各IPng領域的代表們於多倫多舉辦的IETF會議中正式提議IPv6發展計劃,該提議直到同年的11月17日才被認可,並於1998年8月10日成為IETF的草案標準。
IPv6的計劃是建立未來網際網路擴充的基礎,其目標是取代IPv4,預計在2025年以前IPv4仍會被支持,以便給新協議的修正留下足夠的時間。
雖然IPv6在1994年就已被IETF指定作為IPv4的下一代標準,然而在世界範圍內使用IPv6部署的公眾網[1]與IPv4相比還非常的少[2]。
IPv6能解決的核心問題與網際網路目前所面臨的關鍵問題之間出現了明顯的偏差,難以給網際網路的發展帶來革命性的影響。與IPv4的各種地址復用解決方案相比,IPv6能夠降低複雜性和成本,然而目前卻只有製造商較能夠感受到這個優勢,用戶和運營商無法直接感受到,導致產業鏈缺乏推動IPv6的動力。
[3]
從IPv4到IPv6最顯著的變化就是網路地址的長度。RFC 2373 和RFC
2374定義的IPv6地址,就像下面章節所描述的,有128位長;IPv6地址的表達形式一般採用32個十六進位數。
IPv6中可能的地址有2128 ≈
3.4×1038個。也可以想象為1632個因為32位地址每位可以取16個不同的值(參考組合數學)。
在很多場合,IPv6地址由兩個邏輯部分組成:一個64位的網路前綴和一個64位的主機地址,主機地址通常根據物理地址自動生成,叫做EUI-64(或者64-位擴展唯一標識)
IPv6位址為128位元長度,但通常寫做8組每組四個十六進制的形式。例如:
2001:0db8:85a3:08d3:1319:8a2e:0370:7344
是一個合法的IPv6位址。
如果四個數字都是零,可以被省略。例如:
2001:0db8:85a3:0000:1319:8a2e:0370:7344
等同於
2001:0db8:85a3::1319:8a2e:0370:7344
遵從這些規則,如果因為省略而出現了兩個以上的冒號的話,可以壓縮為一個,但這種零壓縮在位址中只能出現一次。因此:
2001:0DB8:0000:0000:0000:0000:1428:57ab
2001:0DB8:0000:0000:0000::1428:57ab
2001:0DB8:0:0:0:0:1428:57ab
2001:0DB8:0::0:1428:57ab
2001:0DB8::1428:57ab
都是合法的地址,並且他們是等價的。但
2001::25de::cade
是非法的。(因為這樣會使得搞不清楚每個壓縮中有幾個全零的分組)
同時前導的零可以省略,因此:
2001: 0DB8:02de::0e13
等於
2001B8:2de::e13
如果這個位址實際上是IPv4的位址,後32位元可以用10進制數表示;因此:
IPv4
位址可以很容易的轉化為IPv6格式。舉例來說,如果IPv4的一個位址為135.75.43.52(十六進位為0x874B2B34),它可以被轉化為0000:0000:0000:0000:0000:0000:874B:2B34或者::874B:2B34。同時,還可以使用混合符號(IPv4-compatible
address),則位址可以為::135.75.43.52。
IPv6 位址可分為三種:[1]
IANA 維護官方的(英文)IPv6
位址空間列表。全域的單播位址的指定可在 RIR's 或 中找到(英文)GRH DFP
pages。
IPv6 中有些位址是有特殊意涵的:
IPv6封包由兩個主要部分組成:頭部和負載。
包頭是包的前40位元組並且包含有源和目的地址,協議版本,通信類別(8位元,包優先順序),流標記(20位元,QoS服務質量控制),負載長度(16位),下一個頭部(用於向後兼容性),和跳段數限制(8位元,生存時間,相當於IPv4中的TTL)。後面是負載,至少1280位元組長,或者在可變MTU(最大傳輸單元)大小環境中這個值為1500位元組。負載在標準模式下最大可為65535位元組,或者在擴展包頭的"jumbo
payload"選項進行設置。
IPv6曾有兩個有著細微差別的版本;在RFC
1883中定義的原始版本(現在廢棄)和RFC
2460中描述的現在提議的標準版本。兩者主要在通信類別這個選項上有所不同,它的位數由4位變為了8位。其他的區別都是微不足道的。
分段(Fragmentation)只在IPv6的主機中被處理。在IPv6中,可選項都被從標準頭部中移出並在協議欄位中指定,類似於IPv4的協議欄位功能。
IPv6地址在域名系統中為執行正向解析表示為AAAA記錄(所謂4A記錄)(類似的IPv4表示為A記錄A
records);反向解析在ip6.arpa(原先ip6.int)下進行,在這裡地址空間為半位元組16進位數字格式。這種模式在RFC
3596給與了定義。
AAAA模式是IPv6結構設計時的兩種提議之一。另外一種正向解析為A6記錄並且有一些其他的創新像二進位串標籤和DNAME記錄等。RFC
2874和它的一些引用中定義了這種模式。
AAAA模式只是IPv6域名系統的簡單概括,A6模式使域名系統中檢查更全面,也因此更複雜:
2002年8月的RFC 3363中對AAAA模式給與了有效的標準化(在RFC
3364有著對於兩種模式優缺點的更深入的討論)。
2004年7月的ICANN聲稱網際網路的根域名伺服器已經經過改進同時支持IPv6和IPv4[4]。
缺點:
工作:
在 IPv6 完全取代 IPv4 前,需要一些轉換機制[3]使得只支援 IPv6 的主機可以連絡 IPv4 服務,並且允許孤立的 IPv6
主機及網路可以藉由 IPv4 設施連絡 IPv6 網際網路。
在 IPv6 主機和路由器與 IPv4 系統共存的時期時,RFC2893 和 RFC2185 定義了轉換機制。這些技術,有時一起稱作簡單網際網路轉換(SIT,Simple Internet
Transition)。[4]
包含:
將 IPv6 視為一種 IPv4 的延伸,以共享程式碼的方式去實作網路堆疊,其可以同時支援 IPv4 和 IPv6
,如此是相對較為容易的。如此的實作稱為雙堆疊,並且,一個實作雙堆疊的主機稱為雙堆疊主機。這步驟描述於 RFC
4213 。
目前大部分 IPv6 的實現使用雙堆疊。一些早期實驗性實作使用獨立的 IPv4 和 IPv6 堆疊。
為了連通 IPv6 網際網路,一個孤立主機或網路需要使用現存 IPv4 的基礎設施來攜帶 IPv6 封包。這可由將 IPv6 封包裝入 IPv4
封包的穿隧協議來完成,實際上就是將 IPv4
當成 IPv6 的連結層。
IP 協議號碼的 41 號用來標示將 IPv6 資料訊框直接裝入 IPv4 封包。IPv6 亦能將入 UDP 封包,如為了跨過一些會阻擋協議 41
交通的路由器或 NAT 設備。其它流行的封裝機制則有AYIYA和GRE。
自動穿隧指路由設施自動決定隧道端點的技術。RFC 3056 建議使用6to4穿隧技術來自動穿隧,其會使用
41 協議來封裝。[5] 隧道端點是由遠端知名的 IPv4 任播位址所決定,並在本地端嵌入 IPv4
位址資訊到 IPv6 中。現今 6to4 是廣泛佈署的。
Teredo 是使用 UDP 封裝的穿隧技術,據稱可跨越多個 NAT 設備。 [6] Teredo
並非廣泛用於佈署的,但一個實驗性版本的 Teredo 已安裝於 Windows XP SP2 IPv6 堆疊中。IPv6,包含 6to4 穿隧和 Teredo
穿隧,在 Windows Vista
中預設是啟動的。[7]許多 Unix 系統只支援原生的 6to4,但 Teredo 可由如 Miredoo
的第三方軟體來提供。
ISATAP[8] 藉由將 IPv4 位址對應到 IPv6 的 link-local 位址,從而將
IPv4 網路視為一種虛擬的 IPv6 區域連線。不像 6to4 和 Teredo 是站點間的穿隧機制, ISATAP
是一種站點內機制,意味著它是用來設計提供在一個組織內節點之間的 IPv6 連接性。
在組態穿隧中,如6in4穿隧,隧道端點是要明確組態過的,可以是藉由管理員手動或作業系統的組態機制,或者藉由如 tunnel
broker 等的自動服務。[9]組態穿隧通常比自動穿隧更容易去除錯,故建議用於大型且良好管理的網路。
組態穿隧在 IPv4 隧道上,使用網際協議中號碼的 41 號。
在區域網際網路註冊管理機構耗盡所有可使用的
IPv4 位址後,非常有可能新加入網際網路的主機只具有 IPv6 連接能力。對這些須要向後相容以能存取 IPv4 資源的客戶端,須要佈署合適的轉換機制。
一種轉換技術是使用雙堆疊的應用層代理,如網頁代理伺服器。
一些對於應用程式無法得知但在其低層使用類 NAT
轉換技術也曾被提出。但因為一般應用層協議所要求的能力其應用太廣,其中大部分都被認定在實際上太不可靠,並且被認為應刪除。
欢迎光临 ::电驴基地:: (https://www.cmule.com/) | Powered by Discuz! 6.0.0 |