袁金娟 鐘誠
摘要:IPV6是下一代互聯(lián)網(wǎng)技術(shù),目前IPV6網(wǎng)絡(luò)的部署尚處在初級(jí)階段,一定時(shí)間內(nèi),IPV4網(wǎng)絡(luò)和IPV6網(wǎng)絡(luò)共存是不可避免的。為了解決網(wǎng)絡(luò)共存期間的互通性問題,人們提出了三類過渡技術(shù):雙棧,隧道和翻譯。IVI是一種基于翻譯的過渡技術(shù),在網(wǎng)絡(luò)過渡的初期,這是一種部署簡便,經(jīng)濟(jì)合理的方式。
關(guān)鍵詞:過渡技術(shù);翻譯;IVI
中圖分類號(hào):F49
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):16723198(2015)17010602
0引言
由于IPv6與IPv4的地址結(jié)構(gòu)是不兼容的,這就需要某種機(jī)制來實(shí)現(xiàn)網(wǎng)絡(luò)的過渡,并解決網(wǎng)絡(luò)共存期間的互訪問題。
出于種種原因,服務(wù)器是IPv4的,但是人們希望它可以給IPV6主機(jī)提供服務(wù);又或者主機(jī)是IPv4的,但是人們希望它可以訪問IPv6服務(wù)器的資源。IVI就是解決上述網(wǎng)絡(luò)互通場景的一種方案。
IVI是一種無狀態(tài)的,基于特定網(wǎng)絡(luò)前綴的翻譯機(jī)制。IVI主要提供IPv4和IPv6之間的地址翻譯,協(xié)議翻譯,分片處理和ALG等功能。
IVI網(wǎng)關(guān)是一個(gè)雙棧路由器,它的一個(gè)接口連接IPv4網(wǎng)絡(luò),一個(gè)接口連接IPv6網(wǎng)絡(luò)。
圖1是單個(gè)IVI網(wǎng)關(guān)配置的例子。
圖1單個(gè)IVI網(wǎng)關(guān)的配置
IVI支持上述8種場景中的場景1,場景2,場景5和場景6。下面分別對(duì)這4種場景作簡要分析。
場景1:一個(gè)IPv6網(wǎng)絡(luò)到IPv4因特網(wǎng)。
由于IPv4地址的缺乏或者由于其他技術(shù)或經(jīng)濟(jì)上的考慮,網(wǎng)絡(luò)是IPv6-ONLY的,但是網(wǎng)絡(luò)中的主機(jī)需要和全球的IPv4因特網(wǎng)通信。
場景2:IPv4因特網(wǎng)到一個(gè)IPv6網(wǎng)絡(luò)。
當(dāng)企業(yè)網(wǎng)絡(luò)或者ISP網(wǎng)絡(luò)采用場景1的模式,IPv6-ONLY用戶不僅想訪問IPv4因特網(wǎng)上的服務(wù)器,同時(shí)也想在IPv6網(wǎng)絡(luò)中安裝他們自己的服務(wù)器,以便被IPv4因特網(wǎng)的用戶訪問。
場景5:一個(gè)IPv6網(wǎng)絡(luò)到一個(gè)IPv4網(wǎng)絡(luò)。
在這種場景中,IPv4網(wǎng)絡(luò)和IPv6網(wǎng)絡(luò)屬于同一個(gè)組織機(jī)構(gòu),使用的IPV4地址和IPV6地址要么是公網(wǎng)地址,要么是內(nèi)網(wǎng)地址。
場景6:一個(gè)IPv4網(wǎng)絡(luò)到一個(gè)IPv6網(wǎng)絡(luò)。
場景6同場景5。
2IVI過渡技術(shù)的具體實(shí)現(xiàn)
IVI的具體實(shí)現(xiàn)包括地址翻譯,協(xié)議翻譯,分片處理和ALG。下面分別進(jìn)行具體分析。
(1)地址翻譯:IVI的地址翻譯是基于特定網(wǎng)絡(luò)前綴的,這個(gè)特定前綴有可能是某個(gè)組織機(jī)構(gòu)或網(wǎng)絡(luò)運(yùn)營商分配的,也有可能是一個(gè)Well-known前綴,該前綴的值為64:ff9b::/96。
IVI的地址翻譯是把IPv4地址“植入”IPv6地址當(dāng)中,如表1所示。
表1IVI地址翻譯的格式
IPv6地址前綴的長度只能是以下長度中的一種:32,40,48,56,64和96。地址中的第64到71比特位是保留位,這些比特位必須置為0。當(dāng)使用一個(gè)96位前綴時(shí),管理員必須確保64到71比特位設(shè)置為0。
“植入的”IPv6地址由前綴+IPv4地址+后綴組成,后綴通常置為0。例如當(dāng)前綴長度是32比特時(shí),IPv4地址編碼位置為32到63比特位;當(dāng)前綴長度是40比特時(shí),IPv4地址的前24比特的編碼位置為40到63比特位,剩余的后8比特的編碼位置為72到79比特位,其他類推。如果前綴長度是96位的話,那么就沒有后綴了。
從“植入的”IPv6地址中提取出IPv4地址的算法如下所述:
如果前綴長度是96比特,那么提取IPV6地址的最后32位比特;
如果是其他前綴長度,移除”u”字節(jié)后得到一個(gè)120比特的序列,然后提取緊挨著前綴的32位比特。
(2)協(xié)議翻譯:IVI的協(xié)議翻譯包括IP首部翻譯,TCP/UDP首部翻譯以及ICMPv4/ICMPv6首部翻譯。下面分別進(jìn)行具體說明。
①IP首部翻譯:是指將IPv4首部翻譯為IPv6首部或者反之。IPv4首部的格式見表2,IPv6基本首部的格式見表3,首部翻譯的各個(gè)域的設(shè)置如表4所示。
表2IPv4首部的格式
表3IPv6基本首部的格式
表4首部翻譯的各個(gè)域的設(shè)置
②TCP/UDP首部翻譯:主要是更新首部中的校驗(yàn)和域。
③ICMPv4/ICMPv6首部翻譯:主要是翻譯類型值和代碼值以及校驗(yàn)和域,ICMP首部的格式如表5所示。
表5ICMP首部的格式
8位類型8位代碼16位檢驗(yàn)和
(不同類型和代碼有不同的內(nèi)容)
(3)分片處理:無論是在IPv4方向,還是在IPv6方向,IVI對(duì)于分片的處理都是先將分片進(jìn)行重裝,重裝后再進(jìn)行翻譯。
(4)ALG:對(duì)于在高層數(shù)據(jù)中帶有地址信息的應(yīng)用,必須實(shí)現(xiàn)ALG功能。典型的此類應(yīng)用有FTP,在FTP ALG中,必須對(duì)FTP數(shù)據(jù)中的地址也進(jìn)行相應(yīng)的翻譯,否則會(huì)導(dǎo)致FTP功能無法正常使用。
3IVI過渡技術(shù)的應(yīng)用舉例
下面以一個(gè)簡單的網(wǎng)絡(luò)拓?fù)鋪碚f明IVI的具體配置和翻譯流程,網(wǎng)絡(luò)拓?fù)淙鐖D2所示。
圖2IVI網(wǎng)絡(luò)拓?fù)?/p>
在圖2的三層交換機(jī)接口上開啟IVI功能,PC端是IPv4主機(jī),服務(wù)器端是IPv6服務(wù)器。
PC端配置:配置IPv4地址為198.51.100.2
服務(wù)器端配置:配置IPv6地址為2001:db8:1c0:2:21::,該IPv6地址對(duì)應(yīng)的IPv4地址為192.0.2.33,配置一條靜態(tài)路由ipv6 route 2001:db8:1c6:3364:2::“本地連接”2001:db8:1c0:2:21::。
三層交換機(jī)接口配置:在連接PC的接口和連接服務(wù)器的接口上分別使能IVI功能。
下面以telnet應(yīng)用為例,來說明IVI的翻譯流程,如圖3所示。
圖3IVI的翻譯流程
PC要訪問服務(wù)器,首先通過DNS46獲取服務(wù)器對(duì)應(yīng)的IPv4地址,即192.0.2.33,PC發(fā)送目的地址為192.0.2.33的TCP報(bào)文,該報(bào)文到達(dá)IVI網(wǎng)關(guān)的IPv4接口后,被翻譯為IPv6報(bào)文,從IPv6接口發(fā)送出去,到達(dá)服務(wù)器;服務(wù)器回應(yīng)的IPv6報(bào)文的目的地址為2001:db8:1c6:3364:2::,該地址對(duì)應(yīng)PC的地址,即198.51.100.2,該報(bào)文到達(dá)IVI網(wǎng)關(guān)的IPv6接口后,被翻譯為IPv4報(bào)文,從IPv4接口發(fā)送出去,到達(dá)PC,后續(xù)TCP流以此類推。
4結(jié)論
在IPv4網(wǎng)絡(luò)和IPv6網(wǎng)絡(luò)共存期間,網(wǎng)絡(luò)互訪是一個(gè)必須要解決的問題,IVI提供了一種了基于翻譯技術(shù)的過渡方式。IVI過渡技術(shù)需要進(jìn)行地址翻譯,協(xié)議翻譯,分片處理和ALG處理,在網(wǎng)絡(luò)過渡的初期,IVI是一種經(jīng)濟(jì)合理的過渡方案。
參考文獻(xiàn)
[1]王相林,朱晨.基于IVI的ICMP協(xié)議翻譯的設(shè)計(jì)與實(shí)現(xiàn)[J].杭州電子科技大學(xué)學(xué)報(bào),2012,(06).
[2]陳杰.IPv6過渡的NAT技術(shù)[D].南京:南京郵電大學(xué),2013.
[3]陳國峰.Intranet中IPv6過渡策略的研究與應(yīng)用[D].杭州:杭州電子科技大學(xué),2011.