IPv6是“互聯(lián)網(wǎng)協(xié)議第六版”的縮寫,是由IETF設(shè)計的下一代互聯(lián)網(wǎng)協(xié)議,目的是取代現(xiàn)有的互聯(lián)網(wǎng)協(xié)議第四版(IPv4)。IPv4的設(shè)計思想成功地造就了目前的國際互聯(lián)網(wǎng),其核心價值體現(xiàn)在:簡單、靈活和開放性。但隨著新應(yīng)用的不斷涌現(xiàn),傳統(tǒng)的IPv4協(xié)議已經(jīng)難以支持互聯(lián)網(wǎng)的進(jìn)一步擴(kuò)張和新業(yè)務(wù)的特性,比如實時應(yīng)用和服務(wù)質(zhì)量保證等。
由于IPv6能夠解決IPv4的許多問題,如地址短缺、服務(wù)質(zhì)量保證等。同時,IPv6還對IPv4作了大量的改進(jìn),包括路由和網(wǎng)絡(luò)自動配置等。因此,IPv6和IPv4將在過渡期內(nèi)共存,并逐步取代IPv4。如何完成從IPv4到IPv6的轉(zhuǎn)換是IPv6發(fā)展中需要解決的第一個問題。
1、地址格式
IPv6的地址中,“FP”就是地址前綴(也稱為“格式前綴”),用于區(qū)別其它地址類型。隨后分別是13位的TLA ID(頂級聚集體ID號)、8位的Res(保留位,以備將來TLA或NLA擴(kuò)充之用)、24位的NLA ID(次級聚集體ID號)、16位SLA ID(節(jié)點ID號)和64位Interface ID(主機(jī)接口ID號)。TLA、NLA、SLA三者構(gòu)成了自頂向下排列的三個網(wǎng)絡(luò)層次,并且依次向上一級申請ID號。分層結(jié)構(gòu)的最底層是網(wǎng)絡(luò)主機(jī)。

IPv6的地址圖示
2、地址分類
IPv6定義了三種不同的地址類型。分別為單點傳送地址(Unicast Address),多點傳送地址(Multicast Address)和任意點傳送地址(Anycast Address)。所有類型的IPv6地址都是屬于接口(Interface)而不是節(jié)點(node)。一個IPv6單點傳送地址被賦給某一個接口,而一個接口又只能屬于某一個特定的節(jié)點,因此一個節(jié)點的任意一個接口的單點傳送地址都可以用來標(biāo)示該節(jié)點。
IPv6中的單點傳送地址是連續(xù)的,以位為單位的可掩碼地址與帶有CIDR的IPv4地址很類似,一個標(biāo)識符僅標(biāo)識一個接口的情況。在IPv6中有多種單點傳送地址形式,包括基于全局提供者的單點傳送地址、基于地理位置的單點傳送地址、NSAP地址、IPX地址、節(jié)點本地地址、鏈路本地地址和兼容IPv4的主機(jī)地址等。
多點傳送地址是一個地址標(biāo)識符對應(yīng)多個接口的情況(通常屬于不同節(jié)點)。IPv6多點傳送地址用于表示一組節(jié)點。一個節(jié)點可能會屬于幾個多點傳送地址。這個功能被多媒體應(yīng)用程序所廣泛使用,它們需要一個節(jié)點到多個節(jié)點的傳輸。RFC-2373對于多點傳送地址進(jìn)行了更為詳細(xì)的說明,并給出了一系列預(yù)先定義的多點傳送地址。
任意點傳送地址也是一個標(biāo)識符對應(yīng)多個接口的情況。如果一個報文要求被傳送到一個任意點傳送地址,則它將被傳送到由該地址標(biāo)識的一組接口中的最近一個(根據(jù)路由選擇協(xié)議距離度量方式?jīng)Q定)。任意點傳送地址是從單點傳送地址空間中劃分出來的,因此它可以使用表示單點傳送地址的任何形式。從語法上來看,它與單點傳送地址間是沒有差別的。當(dāng)一個單點傳送地址被指向多于一個接口時,該地址就成為任意點傳送地址,并且被明確指明。當(dāng)用戶發(fā)送一個數(shù)據(jù)包到這個任意點傳送地址時,離用戶最近的一個服務(wù)器將響應(yīng)用戶。這對于一個經(jīng)常移動和變更的網(wǎng)絡(luò)用戶大有益處。
那么從接口主機(jī)來講(主要從功用來分),IPv6又可以把主機(jī)接口類型進(jìn)行地址配置:全球地址(Globally)、全球單播地址(unicast)、區(qū)域地址(on-site)、鏈路本地地址(link local address)、地區(qū)本地地址(site local address)、廣播地址(Broadcast)、多播群地址(multicast group address)、任播地址(anycast address)、移動地址(Mobility)、家鄉(xiāng)地址(home address)、轉(zhuǎn)交地址(careof address)。
3、地址配置
IPv6的一個基本特性是它支持無狀態(tài)和有狀態(tài)兩種地址自動配置的方式。無狀態(tài)地址自動配置方式是獲得地址的關(guān)鍵。IPv6把自動將IP地址分配給用戶的功能作為標(biāo)準(zhǔn)功能。只要機(jī)器一連接上網(wǎng)絡(luò)便可自動設(shè)定地址。它有兩個優(yōu)點:一是最終用戶用不著花精力進(jìn)行地址設(shè)定,二是可以大大減輕網(wǎng)絡(luò)管理者的負(fù)擔(dān)。IPv6有兩種自動設(shè)定功能:一種是和IPv4自動設(shè)定功能一樣的名為“全狀態(tài)自動設(shè)定”功能,另一種是“無狀態(tài)自動設(shè)定”功能。
在IPv4中,動態(tài)主機(jī)配置協(xié)議(Dynamic Host Configuration Protocol,DHCP)實現(xiàn)了主機(jī)IP地址及其相關(guān)配置的自動設(shè)置。一個DHCP服務(wù)器擁有一個IP地址池,主機(jī)從DHCP服務(wù)器租借IP地址并獲得有關(guān)的配置信息(如缺省網(wǎng)關(guān)、DNS服務(wù)器等),由此達(dá)到自動設(shè)置主機(jī)IP地址的目的。IPv6 繼承了IPv4 的這種自動配置服務(wù),并將其稱為全狀態(tài)自動配置(Stateful Autoconfiguration)。
在無狀態(tài)自動配置(Stateless Autoconfiguration)過程中,主機(jī)首先通過將它的網(wǎng)卡MAC地址附加在鏈接本地地址前綴1111111010之后,產(chǎn)生一個鏈路本地單點傳送地址。接著主機(jī)向該地址發(fā)出一個被稱為鄰居發(fā)現(xiàn)(neighbor discovery)的請求,以驗證地址的唯一性。如果請求沒有得到響應(yīng),則表明主機(jī)自我設(shè)置的鏈路本地單點傳送地址是唯一的。否則,主機(jī)將使用一個隨機(jī)產(chǎn)生的接口ID組成一個新的鏈路本地單點傳送地址。然后,以該地址為源地址,主機(jī)向本地鏈路中所有路由器多點傳送一個被稱為路由器請求(Router Solicitation)的配置信息。路由器以一個包含一個可聚集全球單點傳送地址前綴和其它相關(guān)配置信息的路由器公告響應(yīng)該請求。
主機(jī)用它從路由器得到的全球地址前綴加上自己的接口ID,自動配置全球地址,然后就可以與Internet中的其它主機(jī)通信了。使用無狀態(tài)自動配置,無需手動干預(yù)就能夠改變網(wǎng)絡(luò)中所有主機(jī)的IP地址。

IPv6編址
例如,當(dāng)企業(yè)更換了聯(lián)入Internet的ISP時,將從新ISP處得到一個新的可聚集全球地址前綴。ISP把這個地址前綴從它的路由器上傳送到企業(yè)路由器上。由于企業(yè)路由器將周期性地向本地鏈路中的所有主機(jī)多點傳送路由器公告,因此企業(yè)網(wǎng)絡(luò)中所有主機(jī)都將通過路由器公告收到新的地址前綴,此后,它們就會自動產(chǎn)生新的IP地址并覆蓋舊的IP地址。
4、服務(wù)質(zhì)量
服務(wù)質(zhì)量(Quality of Severs)包含幾個方面的內(nèi)容。從協(xié)議的角度看,IPv6的優(yōu)點體現(xiàn)在能提供不同水平的服務(wù)。這主要由于IPv6報頭中新增加了字段“業(yè)務(wù)級別”和“流標(biāo)記”。有了它們,在傳輸過程中,中間的各節(jié)點就可以識別和分開處理任何IP地址流。盡管對這個流標(biāo)記的準(zhǔn)確應(yīng)用還沒有制定出有關(guān)標(biāo)準(zhǔn),但將來它會用于基于服務(wù)級別的新計費系統(tǒng)。在其它方面,IPv6也有助于改進(jìn)服務(wù)質(zhì)量。這主要表現(xiàn)在支持“時時在線”連接,防止服務(wù)中斷以及提高網(wǎng)絡(luò)性能方面。IPv6數(shù)據(jù)包的格式包含一個8位的業(yè)務(wù)流類別(Class)和一個新的20位的流標(biāo)簽(Flow Label)。
最早在RFC1883中定義了4位的優(yōu)先級字段,可以區(qū)分16個不同的優(yōu)先級。后來在RFC2460里改為8位的類別字段。其數(shù)值及如何使用還沒有定義,其目的是允許發(fā)送業(yè)務(wù)流的源節(jié)點和轉(zhuǎn)發(fā)業(yè)務(wù)流的路由器在數(shù)據(jù)包上加上標(biāo)記,并進(jìn)行除默認(rèn)處理之外的不同處理。一般來說,在所選擇的鏈路上,可以根據(jù)開銷、帶寬、延時或其它特性對數(shù)據(jù)包進(jìn)行特殊的處理。
一個流是以某種方式相關(guān)的一系列信息包,IP層必須以相關(guān)的方式對待它們。決定信息包屬于同一流的參數(shù)包括:源地址,目的地址,QoS,身份認(rèn)證及安全性。IPv6中流的概念的引入仍然是在無鏈接協(xié)議的基礎(chǔ)上的,一個流可以包含幾個TCP連接,一個流的目的地址可以是單個節(jié)點也可以是一組節(jié)點。IPv6的中間節(jié)點接收到一個信息包時,通過驗證它的流標(biāo)簽,就可以判斷它屬于哪個流,然后就可以知道信息包的QoS需求,進(jìn)行快速的轉(zhuǎn)發(fā)。
基于IPv4的Internet在設(shè)計之初,只有一種簡單的服務(wù)質(zhì)量,即采用“盡最大努力”(Best effort)傳輸,從原理上講服務(wù)質(zhì)量QoS是無保證的。文本傳輸,靜態(tài)圖像等傳輸對QoS并無要求。隨著IP網(wǎng)上多媒體業(yè)務(wù)增加,如IP電話、VoD、電視會議等實時應(yīng)用,對傳輸延時和延時抖動均有嚴(yán)格的要求。
5、移動連接
基于移動IPv6協(xié)議集成的IP層移動功能具有很重要的優(yōu)點。尤其是在移動終端數(shù)量持續(xù)增加的今天,這些優(yōu)點更加突出。盡管IPv4中也存在一個類似的移動協(xié)議,但二者之間存在著本質(zhì)的區(qū)別:移動IPv4協(xié)議不適用于數(shù)量龐大的移動終端。移動IP需要為每個設(shè)備提供一個全球唯一的IP地址。IPv4沒有足夠的地址空間可以為在公共互聯(lián)網(wǎng)上運行的每個移動終端分配一個這樣的地址。
從另外的角度講,移動IPv6能夠通過簡單的擴(kuò)展,滿足大規(guī)模移動用戶的需求。這樣,它就能在全球范圍內(nèi)解決有關(guān)網(wǎng)絡(luò)和訪問技術(shù)之間的移動性問題。為了全球范圍內(nèi)使用移動IPv6,在基于IPv6網(wǎng)絡(luò)上增加了一安全層。
6、報頭簡化
IPv6對數(shù)據(jù)報頭作了簡化,以減少處理器開銷并節(jié)省網(wǎng)絡(luò)帶寬。IPv6的報頭由一個基本報頭和多個擴(kuò)展報頭(Extension Header)構(gòu)成,基本報頭具有固定的長度(40字節(jié))(當(dāng)然,由于字段長短的關(guān)系,總的來說,IPv4的基本報頭長度要短的多),放置所有路由器都需要處理的信息。由于Internet上的絕大部分包都只是被路由器簡單的轉(zhuǎn)發(fā),因此固定的報頭長度有助于加快路由速度。
IPv4的報頭有15個域,而IPv6的只有8個域,IPv4的報頭長度是由IHL域來指定的,而IPv6的是固定40個字節(jié)。這就使得路由器在處理IPv6報頭時顯得更為輕松。與此同時,IPv6還定義了多種擴(kuò)展報頭,這使得IPv6變得極其靈活,能提供對多種應(yīng)用的強(qiáng)力支持,同時又為以后支持新的應(yīng)用提供了可能。這些報頭被放置在IPv6報頭和上層報頭之間,每一個可以通過獨特的“下一報頭”的值來確認(rèn)。除了逐個路程段選項報頭(它攜帶了在傳輸路徑上每一個節(jié)點都必須進(jìn)行處理的信息)外,擴(kuò)展報頭只有在它到達(dá)了在IPv6的報頭中所指定的目標(biāo)節(jié)點時才會得到處理(當(dāng)多點播送時,則是所規(guī)定的每一個目標(biāo)節(jié)點)。在那里,在IPv6的下一報頭域中所使用的標(biāo)準(zhǔn)的解碼方法調(diào)用相應(yīng)的模塊去處理第一個擴(kuò)展報頭(如果沒有擴(kuò)展報頭,則處理上層報頭)。每一個擴(kuò)展報頭的內(nèi)容和語意決定了是否去處理下一個報頭。因此,擴(kuò)展報頭必須按照它們在包中出現(xiàn)的次序依次處理。一個完整的IPv6的實現(xiàn)包括下面這些擴(kuò)展報頭的實現(xiàn):逐個路程段選項報頭,目的選項報頭,路由報頭,分段報頭,身份認(rèn)證報頭,有效載荷安全封裝報頭,最終目的報頭。
7、安全特性
安全問題始終是Internet與生俱來的。由于在IP協(xié)議設(shè)計之初沒有考慮安全性,因而在早期的Internet上時常發(fā)生諸如企業(yè)或機(jī)構(gòu)網(wǎng)絡(luò)遭到攻擊、機(jī)密數(shù)據(jù)被竊取等不幸的事情。為了加強(qiáng)Internet的安全性,從1995年開始,IETF著手研究制定了一套用于保護(hù)IP通信的IP安全(IPSec)協(xié)議。IPSec是IPv4的一個可選擴(kuò)展協(xié)議,是IPv6的一個必須組成部分。
IPv6協(xié)議內(nèi)置安全機(jī)制,并已經(jīng)標(biāo)準(zhǔn)化。IPSec的主要功能是在網(wǎng)絡(luò)層對數(shù)據(jù)分組提供加密和鑒別等安全服務(wù),它提供了兩種安全機(jī)制:認(rèn)證和加密。認(rèn)證機(jī)制使 IP通信的數(shù)據(jù)接收方能夠確認(rèn)數(shù)據(jù)發(fā)送方的真實身份以及數(shù)據(jù)在傳輸過程中是否遭到改動。加密機(jī)制通過對數(shù)據(jù)進(jìn)行編碼來保證數(shù)據(jù)的機(jī)密性,以防數(shù)據(jù)在傳輸過程中被他人截獲而失密。IPSec的認(rèn)證報頭(Authentication Header,AH)協(xié)議定義了認(rèn)證的應(yīng)用方法,安全負(fù)載封裝(Encapsulating Security Payload,ESP)協(xié)議定義了加密和可選認(rèn)證的應(yīng)用方法。在實際進(jìn)行IP通信時,可以根據(jù)安全需求同時使用這兩種協(xié)議或選擇使用其中的一種。AH和ESP都可以提供認(rèn)證服務(wù),不過,AH提供的認(rèn)證服務(wù)要強(qiáng)于ESP。
做為IPv6的一個組成部分,IPSec是一個網(wǎng)絡(luò)層協(xié)議。它從底層開始實施安全策略,避免了數(shù)據(jù)傳輸(直至應(yīng)用層)中的安全問題。但它只負(fù)責(zé)其下層的網(wǎng)絡(luò)安全,并不負(fù)責(zé)其上層應(yīng)用的安全,如Web、電子郵件和文件傳輸?shù)取?/P>
作為IPSec的一項重要應(yīng)用,IPv6集成了虛擬專用網(wǎng)(VPN)的功能,使用IPv6可以更容易地、實現(xiàn)更為安全可靠的虛擬專用網(wǎng)。
8、域名解析
在IPv6中,域名的體系結(jié)構(gòu)仍然保持了IPv4的層次原理。而且IPv6地址本身的層級體系也就更加支持了域名解析體系中的地址集聚和地址更改。同樣,在IPv6的域名解析中包括了正向解析和反向解析。正向解析是從域名到IP地址的解釋。
IPv6地址的正向解析目前有兩種資源記錄,即“AAAA”和“A6”記錄。其中“AAAA”較早提出,它是對IPv4協(xié)議“A"”錄的簡單擴(kuò)展,由于IP地址由32位擴(kuò)展到128位,擴(kuò)大了4倍,所以資源記錄由“A”擴(kuò)大成4個“A”。但“AAAA”用來表示域名和IPv6地址的對應(yīng)關(guān)系,并不支持地址的層次性。
“A6”是在RFC2874基礎(chǔ)上提出,它是把一個IPv6地址根據(jù)其本身的層次性分解,然后多個“A6”記錄建立聯(lián)系,每個“A6”記錄都只包含了IPv6地址的一部分,結(jié)合后拼裝成一個完整的IPv6地址。反向解析則是從IP地址到域名的解釋。它與IPv4的“PTR”一樣,但地址表示形式有兩種。一種是用“.”分隔的半字節(jié)16進(jìn)制數(shù)字格式(Nibble Format),低位地址在前,高位地址在后,域后綴是“IP6.INT.”。另一種是二進(jìn)制串(Bit-string)格式,以“\[”開頭,16進(jìn)制地址(無分隔符,高位在前,低位在后)居中,地址后加“]”,域后綴是“IP6.ARPA.”。