朱兆偉,薛敬進②,郭中華
(①寧夏大學 物理電氣信息學院,寧夏 銀川 750021;②中國電信寧夏公司,寧夏 銀川 750002)
隨著互聯網的飛速發展,基于IPv4的互聯網在實際應用中越來越暴露出其不足之處,地址空間耗盡是其主要問題。為了徹底解決目前IPv4遇到的問題并對未來的應用提供更好的支持,互聯網工程任務組(IETF,Internet Engineering Task Force)的下一代地址協議(IPng,IP next generation)工作組提出了IPv6[1]。IPv6是新一代的網絡協議,它擁有巨大的地址空間(IPv4:32-bit位,即 232位;IPv6:128-bit位,即2128位)。但目前基于IPv4的應用程序和基礎網絡設施不僅相當成熟和完善,而且在整個互聯網中有非常廣泛的應用,一下子全部拋棄IPv4很不現實,所以從IPv4網絡到IPv6網絡的轉換有一個相當長的過渡時期,即IPv4網絡與IPv6網絡共存[2]。城域網IPv4到IPv6的平穩過渡迫在眉睫,同時利用現有基礎網絡設備資源和節省投資[3]。寬帶撥號用戶在城域網中占有較大的比例,因此在此環境下構建IPv4/IPv6共存方案具有很大的現實意義。
雙協議棧(Dual Stack)技術是IPv4節點與IPv6節點兼容的最直接方式,應用對象是主機、路由器、交換機等基礎網絡通信設備[4]。雙協議棧使部分主機(或路由器)裝有2個協議棧,一個IPv4和一個IPv6,既能和IPv4的系統通信,又能和IPv6的系統通信,分別支持獨立的IPv4和IPv6路由協議,IPv4和IPv6路由信息按照各自的路由協議進行計算,維護不同的路由表[5]。IPv4數據報按照IPv4路由協議得到的路由表轉發,IPv6數據報按照IPv6路由協議得到的路由表轉發。如圖1所示。

圖1 IPv4/IPv6雙協議棧
隧道技術(Tunneling)是一種通過使用互聯網絡的基礎設施在網絡之間建立虛擬隧道傳遞數據包的方式[4]。具體來說,隧道技術是將一種協議(IPv6)封裝到另一種協議(IPv4)中[6]。在隧道的入口處,將IPv6協議報文封裝到IPv4協議報文中,在隧道的出口處,將封裝在IPv4協議報文中的IPv6協議報文取出[7]。在整個隧道的傳輸過程中,被封裝協議(IPv6)是作為封裝協議(IPv4)的負載。簡單地說,就是在IPv4基礎網絡設備中,從發送方到接受方建立傳遞IPv6數據包的虛擬隧道。
6to4(IPv6 to IPv4)技術是一種地址分配和路由器到路由器的自動隧道技術,它是為IPv6站點和主機之間提供跨越IPv4網絡設備的單播IPv6連通性[6]。6to4使用全球地址前綴2002:XXYY:ZZWW::/48,采用6to4機制的每個節點必須具有至少1個全球唯一的公有IPv4地址(XXYY:ZZWW是對應公有IPv4地址的16進制表示形式)[8]。由于6to4機制下隧道端點的IPv4地址可以從IPv6地址中獲得,所以隧道的建立是自動的。6to4不會在IPv4的路由表中引入新的條目,在IPv6的路由表中只增加1條表項。6to4要求隧道中至少有兩臺路由器支持雙棧和6to4,主機要求至少支持IPv6協議棧[9]。
ISATAP(作站內自動隧道尋址協議,Intra-Site Automatic Tunnel Addressing Protocol)技術是一種地址分配和主機到主機、主機到路由器和路由器到主機的自動隧道過渡技術,它為IPv6主機之間提供了跨越 IPv4內部網絡設備的單播 IPv6連通性[9-10]。ISATAP使用本地管理的接口標識符::0:5EFE:X.Y.Z.W,其中::0:5EFE部分是由Internet號碼中心IANA(互聯網數字分配機構,Internet Assigned Number Authority)所分配的機構單元標識符(00-00-5E)和表示內嵌的IPv4地址類型的類型號(FE)組合而成的。X.Y.Z.W是任意的單播IPv4地址,既可以是共有 IPv4地址,也可以是私有 IPv4地址。任何有效地IPv6單播地址的64位前綴都可以和ISATAP接口標識符相結合,它們包括鏈路本地地址前綴(FE80::/64)、全球前綴(包括6to4前綴)和站點本地前綴[9]。
無需分配新的公有 IPv4地址,應用私有 IPv4地址主機開啟IPv6協議,在IPv4基礎網絡設備環境下構建6to4與ISATAP結合的實驗網絡。
如圖 2所示,2臺主機都在內部使用192.168.0.0/24的私有地址空間,在ISATAP主機A與B節點處各加入一臺ISATAP路由器,使用6to4前綴的ISATAP主機應用6to4/ISATAP Tunnel通過IPv4網絡設備進行通信。具體配置如下[11]:
1)ISATAP主機 A為其自動配置鏈路-本地ISATAP地址 2002: A0A:A01:13:0:5EFE:192.168.10.200。
2)6to4路由器 A為其自動配置鏈路-地址ISATAP地址2002: A0A:A01:13:0:5EFE:192.168.1.1和2002:A0A:A01:13::1。
3)6to4路由器 B為其自動配置鏈路-地址ISATAP地址2002: A0A:1402:13:0:5EFE:192.168.2.1和2002:A0A:1402:13::2。
4)ISATAP主機 A為其自動配置鏈路-本地ISATAP地址 FE80: A0A:1402:13:0:5EFE:192.168.20.200。

圖2 不同6to4站點的ISATAP主機間的通信
其中,A0A:A01是IPv4地址10.10.10.1的16機制表示形式,A0A:1401是 IPv4地址 10.10.20.1的16機制表示形式;而13是6to4路由器的內部網絡接口的接口索引。
圖3、圖4、圖5、圖6、圖7和圖8是實驗網絡的測試結果。

圖3 6to4路由器A ping ipv6 6to4路由器B的Serial1/0口

圖4 6to4路由器A ping ipv6 6to4路由器B的Searial1/1口

圖5 6to4路由器B ping ipv6 6to4路由器A的Serial1/1口

圖6 6to4路由器B ping ipv6 6to4路由器A的Serial1/0口

圖7 6to4路由器A ping主機B

圖8 6to4路由器B ping主機A
城域網中部署雙協議棧網絡是IPv4網絡到IPv6網絡升級的理想方式,城域網內所有三層設備均能從軟件上升級并開啟雙棧功能,即同時運行IPv4路由協議和IPv6路由協議。對于雙協議棧終端,IPv4網關和IPv6網關都可以部署在匯聚三層路由器(交換機)上。這樣對于城域網中新建的雙協議棧用戶可以同時訪問IPv4網絡資源和IPv6網絡資源,不同協議的數據包轉發路徑可能一致,也可能不一致。
從技術實現角度這是最理想方式,不必為不同類型的用戶單獨配置網絡參數,同時管理也簡單,IPv4協議和IPv6協議的邏輯界面清晰[12]。
從建設投資角度這同時也是最理想的方式,城域網原有的基礎網絡設施都是IPv4網絡設備,要建設全雙協議棧網絡,必須將原有IPv4網絡設備淘汰棄用,投資相當大,并有不同程度的設備資源浪費。在所有三層設備上部署雙協議棧路由器(交換機)或開啟雙協議棧功能,并在IPv4核心網中部署隧道技術,這樣就可以有效利用現有網絡設備資源,節省沒必要的投資。
由于城域網原有IPv4基礎網絡建設已經成熟穩定,而且城域網內所有三層網絡設備都是IPv4網絡設備,不能完成對IPv6數據報文進行轉發,所以在客戶端與路由器之間、路由器與路由器之間和主機與主機之間均需建立自動隧道6to4/ISATAP來完成。
隧道模式優點[13]:①保護原有IPv4基礎網絡設備資源(不用把原有IPv4核心網設備升級換代);②原有網絡拓撲和路由無需調整,客戶端只要簡單設置及配置即可訪問全球IPv6資源;③使用隧道完成主機到路由器、路由器到路由器、主機到主機的IPv6數據包傳遞,主機的配置比較簡單,只需確定它們之間的隧道對端路由器接口的IPv4地址即可;④對于用戶端而言,IPv6地址配置方面與原有IPv4地址配置差異不大,不需要為網絡中的所有成員重新做地址分配和規劃。
在IPv4仍然是網絡主宰的今天,隧道技術并不是最終的理想方案,但對于將現有IPv4網絡到IPv6網絡平滑過渡不失為一種有效地方法。
為了保護城域網現有IPv4基礎網絡設備資源并充分利用IPv4網絡設施,在實現城域網IPv4到IPv6平滑過渡的過程中,應盡量使用IPv4/IPv6兼容的過渡技術。首先在軟件上進行IPv6升級更新,然后逐步在硬件上進行IPv6升級更新,穩妥可靠地從IPv4網絡到IPv6網絡平滑過渡。
在城域網IPv6網絡建設初期,IPv6用戶及業務較少,應盡量避免對原有IPv4基礎網絡線路改造或增加,更好的利用現有IPv4基礎網絡設備資源,節省投資;同時希望原有用戶可以方便的接入IPv6網絡,發展和增加新的IPv6用戶,可以在三層設備上直接部署核心雙協議棧路由器(或交換機),城域網內部的原有IPv4用戶和新增IPv6用戶通過在雙協議棧出口路由器上啟動并運行 6to4/ISATAP隧道技術來實現與外部IPv4網絡和IPv6網絡業務的互訪。
利用支持IPv6協議的Cisco 7200路由器作為隧道接入設備與核心網中的主干路由器連接,同時在城域網內部分用戶提供6to4/ISATAP隧道等服務,進而與CHINANET連接如圖9所示。
①Cisco 7200作為隧道連接設備,省級骨干路由開啟IPv4/IPv6雙協議棧功能,并對城域網內IPv6用戶提供 6to4、ISATAP等隧道服務;②在Windows2003和Linux服務器下構建IPv6的Web、文件傳送協議(FTP,File Transfer Protocol)、域名系統(DNS,Domain Name System)、視頻服務等網絡應用平臺[5];③用Cisco 7200組建IPv6網絡實驗室,開展IPv6身份驗證、IP安全協議(IPSEC,IP Security)等相關內容的研究。

圖9 城域網IPv6全面部署拓撲
城域網寬帶撥號用戶 IPv4到 IPv6過渡方案6to4/ISATAP。
圖10是城域網中寬帶撥號用戶IPv4到IPv6過渡邏輯示意圖。

圖10 城域網寬帶撥號用戶IPv6過渡邏輯示意
由于各省市 IPv4基礎網絡規模和網絡拓撲及IPv6部署的情況不同,本文是針對該市IPv6網絡部署和過渡所采取的一種過渡方案研究。此方案的優點:無需給用戶分配新的公有 IPv4地址,通過主機用戶內嵌公有/私有IPv4地址為其自動配置鏈路-本地ISATAP地址,將IPv4網絡用戶逐漸遷移到新的IPv6網絡中,以達到IPv4網絡到IPv6網絡的平滑過渡。
在城域網全面部署IPv6網絡過程中還需關注一些問題:①IPv6路由:城域網規模較大,子網較多,采用IPv6動態路由協議進行路由分發。互聯網組管理協議(IGMP,Internet Group Management Protocol)協議采用開放式最短路徑優先版本 3 (OSPFv3,Open Shortest Path First version 3),它具有適應大型網絡,收斂速度快的特點;②IPv4協議和IPv6協議的控制和數據平面相互影響:雙協議棧理論上IPv4協議和IPv6協議同時運行互補干擾,但是在實際運行中雙協議棧設備很難保證二者完全的隔離。可采用IPv4網關和IPv6網關相分離的方法來減少其相互影響;③城域網全面部署IPv6網絡還需考慮IPv6安全、移動IPv6及無線網絡等問題。
[1] Christian Huitema. IPv6 the New Internet Protocol[M].北京:清華大學出版社,1999.
[2] 李玲玲. IPv4向 IPv6過渡策略研究[J]. 通信技術,2008,41(08):151-153.
[3] 胡曉荷. IPv4向IPv6過渡不是瞬間能完成的[J]. 信息安全與通信保密,2010(03):25-26.
[4] 張國祥.IPv4/IPv6共存于過渡策略的研究與實現[J].計算機教育,2006(01):33-35.
[5] Park E.un-Young,Lee Jae-Hwoon,Choe Byoung-Gu.An IPv4-to-IPv6 Dual Stack Transition Mechanism Supporting Transparent Connections between IPv6 Hosts and IPv4 Hosts in Integrated IPv6/IPv4 Network[C].USA: IEEE, 2004:1024-1027.
[6] 費怡文.IPv4-IPv6過渡期隧道技術分類比較及實現[J].數據通信,2007(04):39-43.
[7] 彭智朝,陳代武,肖奔. Ipv6隧道技術研究與應用[J].通信技術,2010(06):71-73.
[8] CARPENTER B,MOORE K. Connection of IPv6 Domains via IPv4 Clouds[S].[s.l.]:Network Working Goup,2001.
[9] 陳元生. IPv4至Ipv6過渡技術研究及在Windows平臺下的測試分析[D]. 四川:西南交通大學,2004.
[10] Regis Desmeules.Cisco IPv6網絡實現技術[M]. 北京:人民郵電出版社,2004.
[11] 郭麗麗,郭宇明,汪洋,等. 6to4與ISATAP技術相結合的IPv6網絡實現[J]. 通信系統與網絡技術,2006,32(03):1-4.
[12] 申麗萍,申瑞民.IPv6平滑過渡技術的研究[J].上海交通大學學報,2001,35(09):1293-1297.
[13] 余兆明,高玉琢. 高校校園網IPv6升級方案的分析研究[J]. 中國科教創新導刊,2007(476):60-61.
[14] 吳志華. IPv6下上網行為管理系統的設計與實現[J].信息安全與通信保密,2011(01):81-83.