摘要:文章簡(jiǎn)要介紹了IPv4/IPv6隧道技術(shù)的原理,提出了一種實(shí)現(xiàn)IPv4/IPv6隧道技術(shù)的具體方法,并得到了驗(yàn)證與應(yīng)用。該實(shí)現(xiàn)方法簡(jiǎn)單易行,易于推廣,利用當(dāng)前很多網(wǎng)絡(luò)實(shí)驗(yàn)的現(xiàn)有條件都可實(shí)現(xiàn),是一種研究IPv4/IPv6隧道技術(shù)的好方法。
關(guān)鍵詞:IPv6;IPv4/IPv6隧道;IPv4/IPv6過(guò)渡
中圖分類(lèi)號(hào):TP393文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2009)33-9604-03
A method of Realizing IPv4/IPv6 Tunnel Technology
LAN Ji-ming1, ZHANG Hai-yan2
(1.School of Computer Science, Sichuan University of Science Engineering, Zigong 643000; 2.School of Science, Sichuan University of Science Engineering, Zigong 643000,China)
Abstract: The paper gives a brief introduction to the principle of the IPv4/IPv6 tunnel technology, provides a detailed method of realizing IPv4/IPv6 tunnel technology, which has been verified and applied. This method is realized and applied easily under existing conditions of many network laboratory. This is good method to research on IPv4/IPv6 tunnel technology during the IPv4/IPv6 transition period.
Key words: IPv6; IPv4/IPv6 tunnel; IPv4/IPv6 transition
目前,Internet是基于IPv4協(xié)議的,其中存在大量的IPv4主機(jī)及各種IPv4網(wǎng)絡(luò)設(shè)備,要想將IPv4徹底推倒,迅速完成從IPv4到IPv6的改造,這顯然是不現(xiàn)實(shí)的,也是違背計(jì)算機(jī)行業(yè)“向下兼容”、逐步過(guò)渡的規(guī)律的。因此,IPv4和IPv6將長(zhǎng)期共存和交互,IPv4必須平滑、無(wú)縫、安全地向IPv6過(guò)渡,這是Internet未來(lái)發(fā)展的必然。IETF的下一代互聯(lián)網(wǎng)過(guò)渡(the Next Generation Transitions,the NGTrans)工作組己經(jīng)提出了一些過(guò)渡策略和技術(shù),其中隧道技術(shù)是一種比較實(shí)用和成熟的技術(shù),被廣泛采用。本文僅針對(duì)隧道技術(shù),提出了一種在普通網(wǎng)絡(luò)實(shí)驗(yàn)室就能實(shí)現(xiàn)的方法,簡(jiǎn)單易行。
1 IPv4/IPv6隧道技術(shù)的原理
在IPv4/IPv6過(guò)渡的初期,也就是在IPv6網(wǎng)絡(luò)流行于全球之前,總會(huì)有些網(wǎng)絡(luò)首先采用IPv6協(xié)議,而這些網(wǎng)絡(luò)就像是IPv4海洋中的一些小島,我們希望如果能在IPv4的“海底”建立一條“隧道”實(shí)現(xiàn)這些“小島”之間的連接,那么這些IPv6小島就可以跨越IPv4海洋實(shí)現(xiàn)彼此之間的通信,這就是隧道(Tunnel)技術(shù)。
隧道的端點(diǎn)可以是主機(jī)或者路由器,但都必須是雙協(xié)議棧的結(jié)點(diǎn),它們連接兩種網(wǎng)絡(luò),進(jìn)行報(bào)文的封裝與拆封。在隧道入口處,入口端點(diǎn)將IPv6報(bào)文封裝到IPv4報(bào)文中,IPv4報(bào)文的源地址和目的地址分別是隧道入口和出口的IPv4地址。封裝后的IPv4報(bào)文將通過(guò)IPv4的路由器進(jìn)行傳輸,報(bào)頭的協(xié)議字段設(shè)置為41,指示這個(gè)報(bào)文的負(fù)載是一個(gè)IPv6的報(bào)文。在隧道的出口處,出口端點(diǎn)對(duì)IPv4報(bào)文進(jìn)行拆封,將IPv6報(bào)文取出來(lái),轉(zhuǎn)發(fā)給目的站點(diǎn)。由于隧道技術(shù)只要求在隧道的入口和出口端對(duì)報(bào)文進(jìn)行修改,在其他地方?jīng)]有什么要求,所以這種技術(shù)是很容易實(shí)現(xiàn)的。圖1是隧道技術(shù)實(shí)現(xiàn)的基本原理。[1]
在實(shí)際的應(yīng)用中,根據(jù)封裝和拆封操作發(fā)生位置的不同,以及隧道配置方式的不同,隧道技術(shù)可以被分為若干種類(lèi)。但是,不管采用哪種隧道技術(shù),最終發(fā)出的報(bào)文的封裝是一樣的,即使隧道兩端分別采用不同的配置方式(如一端采用Configured Tunnel配置,另一端采用Auto-Configured Tunnel配置),只要參數(shù)不出錯(cuò),它們都是可以互相通信的。
實(shí)際上,隧道技術(shù)不僅適合于過(guò)渡的初期,通過(guò)建立IPv6 over IPv4隧道實(shí)現(xiàn)將IPv4海洋中的兩個(gè)IPv6孤島連接起來(lái),也適合于過(guò)渡的后期,類(lèi)似地建立起IPv4 over IPv6隧道,從而將IPv6海洋中的IPv4孤島連接起來(lái)。[2]
根據(jù)隧道節(jié)點(diǎn)的組成情況,隧道可分為以下4種類(lèi)型:路由器—路由器隧道、路由器—主機(jī)隧道、主機(jī)—主機(jī)隧道、主機(jī)—路由器隧道。在實(shí)際應(yīng)用中,根據(jù)隧道建立的方式不同,隧道技術(shù)又可分為:配置型隧道(Configured Tunnel)和自動(dòng)型隧道(Automatic Tunnel)兩大類(lèi)。自動(dòng)型隧道又包括ISATAP、6to4、6over4、TB、Teredo、DSTM(Dual Stack Transition Mechanism)等類(lèi)型。下面我們以配置型隧道為例進(jìn)行實(shí)驗(yàn)。[3]
2 IPv4/IPv6隧道技術(shù)的一種實(shí)現(xiàn)方法
2.1 實(shí)現(xiàn)平臺(tái)
本實(shí)現(xiàn)方法的硬件平臺(tái)是在四川理工學(xué)院
網(wǎng)絡(luò)實(shí)驗(yàn)室自行搭建的,網(wǎng)絡(luò)拓?fù)鋱D如圖2所示。
其中,R1和R2由兩個(gè)銳捷三層交換機(jī)RG-S3760-24來(lái)實(shí)現(xiàn)的,IPv6主機(jī)由學(xué)生用機(jī)配置而成。在R1和R2兩邊分別是一個(gè)IPv6網(wǎng)絡(luò),在R1和R2之間是一個(gè)模擬的IPv4網(wǎng)絡(luò),通過(guò)建立隧道Tunnel 0實(shí)現(xiàn)兩個(gè)IPv6網(wǎng)絡(luò)之間的通信。在IPv4/IPv6過(guò)渡的初期這個(gè)平臺(tái)很具有代表性。
2.2 在路由器和主機(jī)上的主要配置
由于本實(shí)驗(yàn)中,路由器R1和R2、主機(jī)A和B的配置是對(duì)稱(chēng)相似的,所以下面僅以R1和主機(jī)A的配置為例進(jìn)行表述。
1) R1的f 0/1配置
12switch(config)#hostname R1
(為此三層交換機(jī)取一個(gè)名字)
R1(config)#interface f 0/1
(配置f 0/1接口)
R1(config-if)#no switch
(開(kāi)啟三層交換機(jī)接口的路由功能)
R1(config-if)#ipv6 enable
(開(kāi)啟對(duì)IPv6協(xié)議的支持)
R1(config-if)#ipv6 address 2001:1::1/64
(為f 0/1指定一個(gè)IPv6地址)
2) R1的f 0/2配置
R1(config-if)#interface f 0/2
(配置f 0/2接口)
R1(config-if)#no switch
(開(kāi)啟路由功能)
R1(config-if)#ip add 10.1.1.1 255.255.255.0
(為f 0/2指定一個(gè)IPv4地址)
R1(config-if)#no shut
(激活此接口,使配置生效)
3) R1上的隧道配置
R1(config-if)#interface tunnel 0
R1(config-if)#ipv6 enable
R1(config-if)#ipv6 address 2001:10::1/64
R1(config-if)#tunnel source 10.1.1.1
R1(config-if)#tunnel destination 10.1.1.2
R1(config-if)#tunnel mode:ipv6ip
R1(config-if)#exit
(返回上一級(jí)模式)
4) 設(shè)路由
R1(config)#ipv6 route 2001:2::/64 tunnel0
(將所有訪問(wèn)2001:2::/64節(jié)點(diǎn)的信息都由tunnel0隧道路由出去)
R2的配置與R1相似,IP地址如圖4-2所示,不再累述。
5) 主機(jī)設(shè)置
在主機(jī)上安裝IPv6協(xié)議以后做如下設(shè)置。
主機(jī)A的設(shè)置:
c:\\Documents and Settings\\Administrator>netsh
netsh>interface ipv6
netsh interface ipv6>add address “本地連接 3” 2001:1::2
(在“本地連接 3”接口上設(shè)置主機(jī)IPv6地址)
netsh interface ipv6> add route 2001:2::/64“本地連接 3” 2001:1::1
(為“本地連接 3”增加到2001:2::/64的路由表項(xiàng),缺省網(wǎng)關(guān)為R1的f 0/1接口地址2001:1::1)
主機(jī)B的設(shè)置:與上類(lèi)似,不再累述。
6) 連通性測(cè)試
在主機(jī)A的“命令提示符”狀態(tài)下,鍵入如圖3所示的命令,分別測(cè)試主機(jī)A到R1 f0/1的連通性、主機(jī)A到R2 f0/1的連通性、主機(jī)A到主機(jī)B的連通性,結(jié)果均已順利連通。
3 IPv4/IPv6隧道技術(shù)的應(yīng)用
在上面搭建的硬件平臺(tái)上,可以完成很多IPv4/IPv6過(guò)渡研究。本文采用Windows XP SP3操作系統(tǒng)和VC6.0+SP6+PSDK2003集成開(kāi)發(fā)環(huán)境,自行開(kāi)發(fā)了一個(gè)與協(xié)議無(wú)關(guān)的網(wǎng)絡(luò)聊天程序,并在此平臺(tái)上調(diào)試通過(guò)。此硬件平臺(tái)很容易擴(kuò)充,構(gòu)建起更加復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu),并可實(shí)現(xiàn)IPv6-in-IPv4隧道發(fā)現(xiàn)技術(shù)的研究。[4]
4 結(jié)束語(yǔ)
該文在普通的網(wǎng)絡(luò)實(shí)驗(yàn)室成功地搭建了IPv4/IPv6隧道,并在此硬件平臺(tái)之上做了許多相關(guān)的IPv4/IPv6過(guò)渡研究,得到了成功地應(yīng)用,值得推廣。
參考文獻(xiàn):
[1] 藍(lán)集明,張海燕.對(duì)IPv4/IPv6過(guò)渡技術(shù)的分析與研究[J].電腦知識(shí)與技術(shù),2008,4(7):1886.
[2] 沈慶偉,張霖.基于隧道的IPv4/ IPv6過(guò)渡技術(shù)分析[J].計(jì)算機(jī)技術(shù)與發(fā)展,2007,7(5):170-171.
[3] 李振強(qiáng),趙曉宇,馬嚴(yán).IPv6技術(shù)揭秘[M].北京:人民郵電出版社,2006.
[4] 藍(lán)集明,符長(zhǎng)友.IPv6-in-IPv4隧道發(fā)現(xiàn)技術(shù)研究[J].四川理工學(xué)院學(xué)報(bào):自然科學(xué)版,2009,22(2):42.