王 毅,唐 洋
(1.重慶城市管理職業(yè)學院信息工程學院,重慶 401331;2.重慶電力高等??茖W校計算機科學系,重慶 400053)
據(jù)最新資料顯示,最后一批IPv4地址已于2011年初由ICANN分配完畢。今后新聯(lián)入Internet的企業(yè)網(wǎng)絡及設備很難再獲得有效IP地址。在解決地址擴展性方面只有兩種基本思路。第一種方案是提高現(xiàn)有IPv4地址的利用率,采用技術方面有VLSM、NAT、DHCP和私有地址。這些技術采用地址節(jié)流方式,可以緩解地址短缺問題,但它導致了性能下降、安全性降低和通信不透明(甚至有些網(wǎng)絡服務不能運行)等缺陷。這只是一種臨時解決方案。解決地址短缺的根本辦法是地址開源方式,即將標識每個通信終端的地址由32位擴展到128位,實現(xiàn)基于IPv6的網(wǎng)絡地址技術。這種方案為將來的IT、泛在網(wǎng)、物聯(lián)網(wǎng)設備提供了足夠可用的地址,可以延續(xù)基于端到端透明傳輸?shù)木W(wǎng)絡通信初衷,這才是解決地址短缺的根本之道。其缺點是在實現(xiàn)和IPv4的兼容性方面設計不足,要將IPv4網(wǎng)絡平滑兼容地升級到IPv6網(wǎng)絡,需采用一些其他方案。
根據(jù)中國最大的ISP中國電信的IP升級路線圖可知,IPv4升級到IPv6是一個循序漸進的過程。首先要保持IPv4核心網(wǎng)絡不變,通過一些兼容措施,將IPv6網(wǎng)絡孤島(即聯(lián)入互聯(lián)網(wǎng)的各企業(yè)網(wǎng)絡)通過IPv4核心網(wǎng)互聯(lián)在一起,將來核心網(wǎng)絡再直接更新為IPv6時,卸下孤島之間的過渡接口技術即完成全互聯(lián)的IPv6化。此過程需要5年或更長時間來實現(xiàn)。在IPv4向IPv6過渡階段,符合4-4-4、4-6-4、6-6-6應用環(huán)境的技術方案有 NAT、雙棧和隧道技術。
隧道技術就是必要時將IPv6數(shù)據(jù)包作為數(shù)據(jù)封裝在IPv4數(shù)據(jù)包里,使IPv6數(shù)據(jù)包能在已有IPv4基礎設施(主要是指IPv4路由器)上傳輸?shù)臋C制。隨著IPv6的發(fā)展,出現(xiàn)了一些被運行IPv4協(xié)議骨干網(wǎng)絡隔離開的局部IPv6網(wǎng)絡。要實現(xiàn)這些IPv6網(wǎng)絡之間的通信,必須采用隧道技術。隧道對于源站點和目的站點是透明的。在隧道入口處,路由器將IPv6數(shù)據(jù)分組封裝在IPv4中,該IPv4分組的源地址和目的地址分別是隧道入口和出口IPv4地址。在隧道出口處,再將IPv6分組取出轉發(fā)給目的站點。隧道技術的優(yōu)點在于隧道的透明性,IPv6主機之間的通信可以忽略隧道的存在,隧道只起到物理通道的作用。隧道技術在IPv4向IPv6演進的初期應用非常廣泛。但是,隧道技術不能實現(xiàn)IPv4主機和IPv6主機之間的通信。由于可以通過不同協(xié)議類型數(shù)據(jù)包的封裝和解封裝,方便地實現(xiàn)數(shù)據(jù)包在不同協(xié)議類型網(wǎng)絡中的傳輸穿越,隧道方式相比協(xié)議翻譯而言,能夠較為方便地實現(xiàn)原有流量的承載。
實際應用中,根據(jù)封裝和拆封操作發(fā)生位置的不同,以及隧道建立方式的不同,隧道技術可以被分為手動配置型隧道(Configured Tunnel)和自動配置型隧道(Automatic Transition)技術。無論采用哪種隧道技術,最終發(fā)出報文的封裝是一樣的,只要參數(shù)不出錯,它們都可以互相通信。隧道技術不僅適合于過渡的初期,也適合于過渡的后期,當ISP骨干網(wǎng)絡全部升級為IPv6后,拆除與孤島之間的隧道即可。根據(jù)隧道穿越的不同網(wǎng)絡類型,隧道類技術可以分為IPv6 over IPv4類隧道和IPv4 over IPv6類隧道。目前支持IPv6 over IPv4的隧道類型較多,包括已經(jīng)成為標準的 6to4[1]、6over4、ISATAP[2]、TSP、Teredo、6PE等,而支持IPv4 over IPv6的隧道技術有DS -Lite、A+P、TSP 等。
6to4隧道[3-4](RFC3056)技術采用自動構造隧道機制,由于這種機制下隧道端點的IPv4地址可以從IPv6地址中提取,所以隧道是自動建立的。6to4不會在IPv4的路由表中引入新的條目,在IPv6的路由表中只增加一條表項。采用6to4機制的IPv6 ISP只需要做很少的管理工作,這種機制很適用于運行IPv6站點之間的通信。6to4要求隧道中至少有兩臺路由器支持雙棧和6to4。
6to4隧道采用特殊的IPv6地址,地址格式如圖1所示。IANA為6to4隧道方式分配了一個永久性的IPv6格式前綴0x2002,表示成IPv6地址前綴格式為2002::/16。如果一個用戶站點擁有至少一個有效的全球惟一的32位IPv4地址,那么該用戶站點將不需要任何分配申請即可擁有IPv6地址前綴2002:[v4 address]::/48。例如某企業(yè)獲得 IPv4出口地址為202.202.24.24,則該企業(yè)內部網(wǎng)絡的IPv6網(wǎng)絡號即為2002:CACA:1818::/48。
圖1 IPv6地址格式
6to4技術通常在IPv6站點的邊界路由器之間建立隧道,源站點的邊界路由器是隧道的首節(jié)點,目的站點的邊界路由器是隧道的尾節(jié)點。它所定義的6to4地址前綴中蘊含了邊界路由器的IPv4地址。當任意兩臺IPv6站點通信時,隧道首節(jié)點自動從IPv6源和目的地址(6to4地址)中提取出隧道首尾節(jié)點的IPv4地址,在兩站點的邊界路由器之間建立一條IPv4隧道。隧道不需要維護任何信息,在通信開始時建立,通信結束時自動撤銷。站點的邊界路由器充當了隧道的端點。
6to4隧道的應用環(huán)境有兩種[5]:一種是通信雙方都處于6to4域中,并且均采用6to4地址;另一種是通信的一端處于6to4域中,采用6to4地址,而另一端則處于純IPv6域中,采用純IPv6地址,此時應使用6to4中繼器進行連接。6to4中繼器在純IPv6接口和6to4偽接口上參與IPv6單播路由協(xié)議,在支持6to4的IPv4接口上參與IPv4單播路由協(xié)議。
6to4路由器提供了由IPv4演變而來的IPv6網(wǎng)絡之間的互聯(lián),這種網(wǎng)絡要求和非2002::/16前綴的網(wǎng)絡進行通信時就需要6to4中繼的支持。6to4中繼路由器是一種特殊的6to4路由器,它位于IPv6主干網(wǎng)的邊界,除具有一般6to4路由器所具有的功能外,它的路由宣告還具備兩個功能,其一是向IPv6主干網(wǎng)內部宣告其對目的網(wǎng)絡2002::/16(各孤立6to4站點)的可達性,其二是通過6to4隧道,在路由策略允許的范圍內,向各6to4站點宣告它對IPv6主干網(wǎng)內部各站點的可達性。那些孤立站點的6to4路由器通過參與路由宣告,獲得了通往IPv6主干網(wǎng)內各站點的路由。其中的next hop指向位于IPv6主干網(wǎng)邊界的6to4中繼路由器。
為了幫助6to4站點在因特網(wǎng)上找到可用的6to4中繼,給6to4機制增加更多可擴展性,RFC3068引入了一個任意播前綴。這樣6to4數(shù)據(jù)包就可以被自動路由到IPv4因特網(wǎng)上最近的6to4中繼。IANA分配的任意播前綴為192.88.99.0/24,它專門用于自動接收6to4數(shù)據(jù)包到最近的6to4中繼。在6to4相關配置中,可以使用IPv6 route::/0 2002:c058:6301::命令配置默認的IPv6路由。
ICANN把最后一批IPv4地址分配給各地區(qū)Internet注冊機構后,也會在很短的時間內由最終用戶耗盡。隨著ISP骨干和接入網(wǎng)絡的升級,大中型企業(yè)網(wǎng)必然向IPv6過渡。由于大批企業(yè)在IPv4基礎網(wǎng)絡中已投入了巨資,所以IPv4/IPv6雙棧網(wǎng)絡將在近幾年甚至十年時間中共存。為了不影響企業(yè)網(wǎng)絡對外界IPv6網(wǎng)絡的正常通信,企業(yè)可以在現(xiàn)有網(wǎng)絡中升級出口路由器為雙棧路由器,以達到最小的投資升級到IPv4/IPv6雙棧網(wǎng)絡。企業(yè)網(wǎng)絡升級到IPv6基礎網(wǎng)絡的必然條件之一是企業(yè)網(wǎng)絡中的三層交換機及路由器設備必須支持雙棧協(xié)議,且企業(yè)必須申請到合法的出口IPv4地址,另外企業(yè)必須在原有IPv4協(xié)議的DNS服務器基礎上增加支持IPv6協(xié)議的DNS服務器。本文在IPv4/IPv6雙棧網(wǎng)絡為基礎的企業(yè)網(wǎng)中,通過IPv4接入網(wǎng)和外界純IPv6之間的通信需求為例進行研究和實現(xiàn)。網(wǎng)絡拓撲圖如圖2所示。
圖2 工作過程系統(tǒng)化課程開發(fā)的基本流程
為了保護企業(yè)在原有IPv4網(wǎng)絡上的投資,需要對網(wǎng)絡中的IP地址進行基于IPv6的重新規(guī)劃。實施6to4隧道技術要求IPv6地址前綴為2002:[v4 address]::/48,則原來網(wǎng)絡的IP應進行相應變化。為了延續(xù)原IPv4地址的規(guī)劃思路,本人建議新的IPv6為 2002:[全局 v4 address]:[本地 v4 address]::/80。例如企業(yè)的 Internet接入地址為61.61.61.61,某設備原IPv4地址為192.168.10.1/24,則該設備端口的IPv6地址即演變?yōu)?002:3d3d:3d3d:c0a8:a01::/80。
基于IPv6的監(jiān)控和測試命令較多。企業(yè)網(wǎng)絡骨干的連通性及性能檢測,通常是查看接口的IPv6信息、鄰居表和路由表等信息。最常用的交換機/路由器檢測命令有ping ipv6、tracer ipv6。以下是在企業(yè)內部交換機中執(zhí)行監(jiān)控與測試的效果。
為了讓IPv4網(wǎng)絡過渡到IPv6,實現(xiàn)雙棧網(wǎng)絡的同時兼容運行,企業(yè)內網(wǎng)各設備的IP地址前綴要一致。它必須以2002::/16為前綴,這是尋址需要,否則無法路由。在企業(yè)出口路由器上設置6to4隧道時,可以不配置IPv6地址,但設備必須支持IPv6協(xié)議。為了讓2002::/16為前綴的IPv6網(wǎng)絡和其它IPv6網(wǎng)絡進行通信,還需要設置6to4中繼路由器,中繼路由器地址為192.88.99.0/24。
由于企業(yè)網(wǎng)在接入到IPv6骨干網(wǎng)時,限制為特殊的6to4地址,因此6to4技術不適在大型IPv6骨干網(wǎng)絡中使用。6to4隧道技術在IPv4/IPv6過渡初期較為有效,無須申請正式的IPv6址就可以部署IPv6。當以后Internet資源全部過渡到IPv6后,需要對企業(yè)網(wǎng)絡IP地址和路由進行重配置,并卸載6to4隧道功能。
隨著計算機、物聯(lián)網(wǎng)終端數(shù)量的快速增長,IP地址的需求導致IPv6必然代替已耗盡地址的IPv4。為了最大化保護企業(yè)在網(wǎng)絡中的投資并現(xiàn)實和雙?;ヂ?lián)網(wǎng)的接入,本文提出了在IPv4/IPv6雙棧網(wǎng)絡中,通過6to4隧道技術聯(lián)結互聯(lián)網(wǎng)上IPv6資源的實現(xiàn)方法。經(jīng)過實驗和測試,證明該方案有效,可以推廣。
[1] IETF RFC3964,Security Considerations for 6to4[S].
[2] IETF RFC 4214,Talwar M,Thaler D.Intra-Site Automatic Tunnel Addressing Protocol(ISATAP)[S].
[3] RFC3056,Connection of IPv6 Domains via IPv4 Clouds[S].
[4] 王曉峰,吳建平,崔勇.互聯(lián)網(wǎng)IPv6過渡技術綜述[J].小型微型計算機系統(tǒng),2006,(3).
[5] 杜慧軍.基于雙協(xié)議棧的6to4隧道技術的應用[J].廣東技術師范學院學報,2007,(12).