專利名稱:一種ip網(wǎng)絡協(xié)議轉換的方法
技術領域:
本發(fā)明涉及計算機網(wǎng)絡通信技術領域,特別是一種IPV6報文穿透IPV4NATs方法。一種IPV6(IPV6,Internet Protocol Version 6,第6版網(wǎng)際協(xié)議)報文穿透IPV4 NATs(IPV4 NATs,Internet Protocol Version 4Network Address Translators,第4版網(wǎng)際協(xié)議網(wǎng)絡地址轉換器)方法是一種IPV4和IPV6共存時期的網(wǎng)絡協(xié)議轉換技術。該方法主要解決以下問題為位于一個或多個IPV4 NATs后面的IPV6/IPV4雙協(xié)議主機提供通用IPV6地址配置、支持IPV6/IPV4雙協(xié)議主機之間、IPV6/IPV4雙協(xié)議主機和IPV6主機之間的IPV6報文通信。為了穿透IPV4 NATs,IPV6報文被封裝在IPV4-UDP(IPV4-UDP,IPV4 User Datagram Protocol,IPV4用戶數(shù)據(jù)報協(xié)議)報文中。
背景技術:
在IPV4和IPV6共存時期,為了解決位于IPV4網(wǎng)絡中的IPV6主機和IPV6網(wǎng)絡的IPV6主機之間的IPV6報文互通問題,人們提出眾多解決方案,如6to4協(xié)議、ISATAP協(xié)議(ISATAP,Intrasite automatic tunnel AddressingProtocol,內部集自動隧道地址協(xié)議)等等。這些協(xié)議的共同特點是把IPV6報文封裝到IPV4報文,通過IPV4網(wǎng)絡來傳送IPV6報文。但采用上述方法無法解決IPV6報文穿透IPV4 NATs問題。該問題具體描述為位于IPV4 NATs后面的IPV6/IPV4雙協(xié)議主機,通過IPV4 NATs和IPV4網(wǎng)絡,和IPV6主機之間相互傳送IPV6報文;或者位于IPV4 NATs后面的IPV6/IPV4雙協(xié)議主機,通過IPV4 NATs和IPV4網(wǎng)絡,和位于IPV4 NATs后面的IPV6/IPV4雙協(xié)議主機之間相互傳送IPV6報文。
按照IPV4協(xié)議規(guī)定TCP報文封裝在IPV4報文中,需要將IPV4首部的協(xié)議字段值設為6;UDP報文封裝在IPV4報文中,需要將IPV4首部的協(xié)議字段值設為17;IPV6報文封裝在IPV4報文中,需要將IPV4首部的協(xié)議字段值設為41。典型的IPV4 NATs只傳送IPV4首部協(xié)議字段值為6或17的IPV4報文,不傳送協(xié)議字段值為41的IPV4報文,所以封裝在IPV4中的IPV6報文無法穿透典型的IPV4 NATs。
為了實現(xiàn)IPV6報文穿透IPV4 NATs,美國微軟公司提出Teredo協(xié)議,該協(xié)議基本方法是將IPV6報文封裝在IPV4 UDP報文,通過UDP報文承載實現(xiàn)IPV6報文穿透IPV4 NATs。截至到本發(fā)明申請期為止,Teredo協(xié)議還在完善之中,微軟公司向IETF(Internet Engineering Task Force,Internet工程任務組)提交的Teredo協(xié)議處于草案階段;同時微軟公司已經(jīng)在WindowsXP部署了Teredo協(xié)議。
截至到本發(fā)明申請為止,Teredo協(xié)議需要給IPV4 NATs后面的雙協(xié)議主機分配特定格式的IPV6地址——Teredo地址。Teredo地址包含一個長度為32比特的固定前綴,該固定前綴在互聯(lián)網(wǎng)上的合法使用必須得到IANA(IANA,The Internet Assigned Numbers Authority,互聯(lián)網(wǎng)指派號機構)批準。Teredo地址同時還包含IPV4 NATs分配的外部IPV4地址和外部UDP端口信息,后者是一個動態(tài)變化的參數(shù),這將造成Teredo地址具有動態(tài)性。這種特性將給移動IPV6應用、基于DNS的高層應用、基于IPV6地址過濾的安全機制帶來不利影響。除此外,截至到本發(fā)明申請為止,Teredo協(xié)議不提供位于symmetric NAT類型的IPV4 NATs后面的雙協(xié)議主機的IPV6報文通信的支持。
本發(fā)明提出的方法,給IPV4 NATs后面的雙協(xié)議主機分配的是通用IPV6地址,不需要在IPV6地址中包含由IPV4 NATs分配的外部IPV4地址和外部UDP端口信息,全面支持移動IPV6應用、基于DNS的高層應用、基于IPV6地址過濾的安全機制。由于不包含特定前綴,所以也不需要向IANA機構申請?zhí)厥馇熬Y。除此外,本發(fā)明提供對各種類型的IPV4 NATs后面的雙協(xié)議主機的IPV6連通性支持——即雙協(xié)議主機和IPV6主機之間、雙協(xié)議主機和雙協(xié)議主機之間的IPV6報文通信?;诒景l(fā)明原理,已經(jīng)實現(xiàn)了IPV6報文穿透IPV4 NATs相關設備原理樣機。
發(fā)明內容
本發(fā)明的目的在于提供一種IPV6報文穿透IPV4 NATs方法。
本發(fā)明的技術方案為位于一個或多個IPV4 NATs后面的IPV6/IPV4雙協(xié)議主機提供通用IPV6地址配置、支持IPV6/IPV4雙協(xié)議主機之間、IPV6/IPV4雙協(xié)議主機和IPV6主機之間的IPV6報文通信,該方法具體步驟如下步驟1基于WEB方式的IPV6網(wǎng)絡接入路由器參數(shù)配置;步驟2建立雙協(xié)議主機和NAR之間的IPV4 UDP隧道;步驟3主機之間的IPV6報文通信。
其中步驟1——基于WEB方式的IPV6網(wǎng)絡接入路由器參數(shù)配置IPV6網(wǎng)絡接入路由器將設備信息,包括以下內容IPV4地址、設備名字、設備所在地區(qū)、服務資費,發(fā)布到NARP,供用戶選擇。
其中步驟1——基于WEB方式的IPV6網(wǎng)絡接入路由器參數(shù)配置用戶采用WEB方式配置NAR的IPV4地址參數(shù),并將NAR的IPV4地址參數(shù)保存到雙協(xié)議主機的通信配置文件中。
其中步驟2——建立雙協(xié)議主機和NAR之間IPV4 UDP隧道,雙協(xié)議主機與NAR建立IPV4 UDP隧道之前,從雙協(xié)議主機通信配置文件中獲取NAR的IPV4地址。其中步驟2——建立雙協(xié)議主機和NAR之間IPV4 UDP隧道,IPV6網(wǎng)絡接入路由器從雙協(xié)議主機發(fā)送的UDP報文中捕獲雙協(xié)議主機的外部UDP端口和IPV4地址參數(shù);然后分配給雙協(xié)議主機一個通用IPV6地址;同時分配給雙協(xié)議主機一個空閑UDP端口號,該端口號用于建立雙協(xié)議主機和NAR之間的IPV4 UDP隧道;最后將三種參數(shù)之間的映射關系保存在IPV6網(wǎng)絡接入路由器的IPV4 UDP隧道映射關系文件中。
其中步驟2——建立雙協(xié)議主機和NAR之間IPV4 UDP隧道,IPV6網(wǎng)絡接入路由器分配給雙協(xié)議主機的是通用IPV6地址,該地址是一個在IPV6網(wǎng)絡中可路由的、屬于IPV6網(wǎng)絡接入路由器路由域的IPV6地址,不需要在IPV6地址中包含由IPV4 NATs分配的外部IPV4地址和外部UDP端口信息,也不需要包含特定地址前綴。
其中步驟3——主機之間的IPV6報文通信,IPV6網(wǎng)絡接入路由器收到從IPV6網(wǎng)絡方向來的IPV6報文后,根據(jù)報文中的目的地址,從步驟2中建立的IPV4 UDP隧道映射關系文件中查找對應的UDP隧道,如果存在對應映射關系,則將IPV6報文轉發(fā)到該映射所指示的UDP隧道。其中步驟3——主機之間的IPV6報文通信,步驟2中IPV6網(wǎng)絡接入路由器分配給雙協(xié)議主機的是一個在IPV6網(wǎng)絡中可路由的、屬于IPV6網(wǎng)絡接入路由器路由域的通用IPV6地址,主機之間進行IPV6報文通信時,將該地址作為IPV6報文中的源地址或者目的地址構建IPV6報文,符合IPV6報文路由尋址原理,該報文最終能夠尋址到達IPV6主機或者IPV6接入路由器。
1、概述本發(fā)明涉及IPV6報文穿透IPV4 NATs通信方法。提供雙協(xié)議主機之間、雙協(xié)議主機和IPV6主機之間的IPV6報文互通性支持,其中雙協(xié)議主機可以位于NAT域或者IPV4網(wǎng)絡。
本發(fā)明與Teredo協(xié)議相比,具有以下特點1、分配的IPV6地址為通用IPV6地址,不需要在IPV6地址中包含IPV4 NATs分配給雙協(xié)議主機使用的外部IPV4地址和外部端口參數(shù),也不需要向IANA機構申請?zhí)囟ǖ那熬Y。2、通過WEB方式獲取IPV6接入路由器的IPV4服務地址。3、支持IPV6報文穿透各種類型IPV4 NATs。
2、網(wǎng)絡拓撲結構說明本發(fā)明主要包括三種功能單元,功能定義如下●IPV6網(wǎng)絡接入路由器路由器,完成IPV4 UDP隧道集中管理和IPV6網(wǎng)絡接入服務功能。
●網(wǎng)絡接入路由器導航器WWW服務器,用于保存IPV6網(wǎng)絡接入路由器設備信息。
●主機隧道管理器IPV4 UDP隧道維護軟件,安裝在雙協(xié)議主機上。
為了描述方便,以下將IPV6網(wǎng)絡接入路由器簡稱為NAR(Network AccessRouter),將網(wǎng)絡接入路由器導航器簡稱為NARP(Network Access Router Pilot),將主機隧道管理器簡稱為HTM(Host TunnelManager),將IPV4網(wǎng)絡地址翻譯設備簡稱為IPV4 NATs(IPv4 network address translators)
圖1是本發(fā)明的網(wǎng)絡拓撲結構和IPV4 UDP隧道建立過程圖;圖2是本發(fā)明的雙協(xié)議主機和IPV6主機之間IPV6報文通信圖;圖3是本發(fā)明的位于不同NAT域的雙協(xié)議主機之間IPV6報文通信圖;圖4是本發(fā)明的位于NAT域和位于IPV4網(wǎng)絡雙協(xié)議主機之間IPV6報文通信圖;圖5是本發(fā)明的基于WEB方式的IPV6網(wǎng)絡接入路由器參數(shù)配置圖。
與本發(fā)明方法相關的網(wǎng)絡拓撲結構見附圖1。
在圖1中存在三種性質的網(wǎng)絡●NAT域,位于該域的主機由IPV4 NATs分配私有IPV4地址;●IPV4網(wǎng)絡,位于該網(wǎng)絡的主機擁有公有IPV4地址;●IPV6網(wǎng)絡,位于該網(wǎng)絡的主機擁有IPV6地址。
其中IPV4 NATs位于NAT域和IPV4網(wǎng)絡結合處,具有私有IPV4地址和公有IPV4地址;NAR位于IPV4網(wǎng)絡和IPV6網(wǎng)絡結合處,具有公有IPV4地址和IPV6地址。NARP具有公有IPV4地址,位于IPV4網(wǎng)絡中。HTM安裝在雙協(xié)議主機上,該主機位于NAT域或者IPV4網(wǎng)絡。
為了實現(xiàn)IPV6報文穿透IPV4 NATs,本發(fā)明包括以下三個關鍵步驟建立IPV4 UDP隧道;雙協(xié)議主機、IPV6主機之間的IPV6報文通信、基于WEB方式的IPV6網(wǎng)絡接入路由器參數(shù)配置。
具體實施方式
如下3、建立雙協(xié)議主機和NAR之間的IPV4 UDP隧道雙協(xié)議主機和NAR之間建立IPV4 UDP隧道的方法具體描述如下,流程參見附圖1。具體過程如圖中數(shù)字表示的箭頭所示。
(1)位于NAT域的雙協(xié)議主機通過IPV4 NATs接入IPV4網(wǎng)絡后(位于IPV4網(wǎng)絡的雙協(xié)議主機直接接入IPV4網(wǎng)絡),HTM訪問NARP,獲取NAR的IPV4地址,保存到HTM的通信配置文件。
(2)HTM根據(jù)保存在HTM的通信配置文件中的NAR的IPV4地址,向NAR對應的UDP監(jiān)聽服務端口發(fā)送UDP隧道資源請求消息。
(3)NAR收到該請求后,從HTM發(fā)送的UDP報文中捕獲IPV4 NATs分配給雙協(xié)議主機使用的參數(shù)包括IPV4地址和UDP端口號;然后分配給雙協(xié)議主機一個IPV6地址,該地址屬于IPV6網(wǎng)絡接入路由器路由域,在IPV6網(wǎng)絡中可路由;同時分配給雙協(xié)議主機一個空閑UDP端口號,該端口號用于建立雙協(xié)議主機和NAR之間的IPV4 UDP隧道;最后將三種參數(shù)之間的映射關系保存在IPV6網(wǎng)絡接入路由器的IPV4 UDP隧道映射關系文件中。
(4)NAR將NAR(3)中相應的IPV4 UDP隧道映射關系參數(shù)發(fā)送給HTM,HTM將三個參數(shù)添加到HTM的通信配置文件中。
(5)HTM和NAR之間根據(jù)附錄中的IPV4 NATs類型測試算法,對IPV4NATs類型進行測試。NAR將測試結果傳遞給HTM,HTM把該參數(shù)添加到HTM的通信配置文件。
(6)HTM和NAR之間動態(tài)維護UDP隧道,HTM通過定期發(fā)送Hello包來維護在IPV4 NATs中的映射,發(fā)送周期小于IPV4 NATs的映射生存時間。
4、主機之間IPV6報文通信
4.1、雙協(xié)議主機和IPV6主機之間IPV6報文通信位于NAT域的雙協(xié)議主機和位于IPV6網(wǎng)絡的IPV6主機之間要進行IPV6報文通信,首先需要建立雙協(xié)議主機和NAR之間的IPV4 UDP隧道。雙協(xié)議主機向位于IPV6網(wǎng)絡的IPV6主機發(fā)送IPV6報文,IPV6報文通過IPV4UDP隧道,穿透IPV4 NATs和IPV4網(wǎng)絡,到達NAR,NAR轉發(fā)到IPV6網(wǎng)絡,自動路由到對應IPV6主機;IPV6主機發(fā)送給雙協(xié)議主機的IPV6報文,在IPV6網(wǎng)絡中自動路由到NAR,NAR將IPV6報文通過UDP隧道,穿透IPV4網(wǎng)絡和IPV4 NATs,傳送到達雙協(xié)議主機。
具體分為兩種情況雙協(xié)議主機向IPV6主機發(fā)送IPV6報文和IPV6主機向雙協(xié)議主機發(fā)送IPV6報文。參見附圖2。具體過程如圖中數(shù)字表示的箭頭所示。
4.1.1雙協(xié)議主機向IPV6主機發(fā)送IPV6報文(1)雙協(xié)議主機的HTM將需要發(fā)送的IPV6報文封裝在IPV4 UDP報文中,其中IPV6報文的源地址是IPV6網(wǎng)絡接入路由器分配的IPV6地址,目的地址是IPV6網(wǎng)絡中的IPV6主機地址。
(2)封裝了IPV6報文的IPV4 UDP報文通過IPV4 NATs轉發(fā)到IPV4網(wǎng)絡,到達NAR。
(3)NAR收到后,從IPV4 UDP報文中取出IPV6報文,直接轉發(fā)到IPV6網(wǎng)絡。
(4)由于該報文的IPV6地址符合IPV6報文路由尋址原理,該報文最終將通過IPV6路由系統(tǒng)傳送到目的IPV6主機。
4.1.2 IPV6主機向雙協(xié)議主機發(fā)送IPV6報文(5)IPV6網(wǎng)絡中IPV6主機向雙協(xié)議主機發(fā)送IPV6報文,IPV6報文中源地址是IPV6主機的IPV6地址,目的地址是雙協(xié)議主機的IPV6地址。
(6)IPV6報文通過IPV6路由系統(tǒng)傳送到NAR。
(7)NAR收到IPV6報文后,根據(jù)報文中的目的地址,從IPV4 UDP隧道映射關系文件中查找對應的UDP隧道,如果存在對應映射關系,則將IPV6報文封裝在IPV4UDP報文中,轉發(fā)IPV4網(wǎng)絡。其中IPV4UDP報文使用的源端口號是NAR分配給雙協(xié)議主機使用的參數(shù),源IPV4地址是NAR的IPV4地址;目的端口號和目的IPV4地址是IPV4 NATs分配給雙協(xié)議主機使用的參數(shù)。
(8)包含IPV6報文的IPV4 UDP報文到達IPV4 NATs,通過IPV4 NATs轉發(fā)到雙協(xié)議主機。雙協(xié)議主機的HTM從IPV4UDP報文中取出IPV6報文。
位于IPV4網(wǎng)絡的雙協(xié)議主機和位于IPV6網(wǎng)絡的IPV6主機之間進行IPV6報文通信的方法和過程與上面類似。
4.2、位于不同NAT域的雙協(xié)議主機之間IPV6報文通信位于不同NAT域的雙協(xié)議主機之間要進行IPV6報文通信,首先需要建立雙協(xié)議主機和NAR之間的各自IPV4 UDP隧道。雙協(xié)議主機之間通過各自IPV4 UDP隧道,穿透IPV4 NATs和IPV4網(wǎng)絡,通過各自NAR轉發(fā)功能和IPV6網(wǎng)絡路由尋址功能,實現(xiàn)雙協(xié)議主機之間IPV6報文互通。其中將發(fā)送方雙協(xié)議主機對應的IPV4 NATs稱為源IPV4 NATs,NAR稱為源NAR;將接收方雙協(xié)議主機對應的IPV4 NATs稱為目的IPV4 NATs,NAR稱為目的NAR。參見附圖3。具體過程如圖中數(shù)字表示的箭頭所示。
具體過程如下(1)雙協(xié)議主機的HTM將需要發(fā)送的IPV6報文封裝在IPV4 UDP報文中,其中IPV6報文的源地址是IPV6網(wǎng)絡接入路由器分配的IPV6地址,目的地址是目的雙協(xié)議主機的IPV6地址。
(2)封裝了IPV6報文的IPV4 UDP報文通過源IPV4 NATs轉發(fā)到IPV4網(wǎng)絡,到達源NAR。
(3)源NAR收到后,從IPV4 UDP報文中取出IPV6報文,直接轉發(fā)到IPV6網(wǎng)絡。
(4)由于該報文的IPV6地址符合IPV6報文路由尋址原理,該報文最終將通過IPV6路由系統(tǒng)傳送到目的NAR。
(5)目的NAR收到IPV6報文后,根據(jù)報文中的目的地址,從IPV4 UDP隧道映射關系文件中查找對應的UDP隧道,如果存在對應映射關系,則將IPV6報文封裝在IPV4 UDP報文中,轉發(fā)IPV4網(wǎng)絡。其中IPV4UDP報文使用的源端口號是目的NAR分配給雙協(xié)議主機使用的參數(shù),源IPV4地址是目的NAR的IPV4地址;目的端口號和目的IPV4地址是目的IPV4 NATs分配給雙協(xié)議主機使用的參數(shù)。
(6)包含IPV6報文的IPV4 UDP報文到達目的IPV4 NATs,通過目的IPV4NATs轉發(fā)到目的雙協(xié)議主機。目的雙協(xié)議主機的HTM從IPV4 UDP報文中取出IPV6報文。
4.3、位于NAT域和位于IPV4網(wǎng)絡雙協(xié)議主機之間IPV6報文通信位于NAT域的雙協(xié)議主機和位于IPV4網(wǎng)絡的雙協(xié)議主機之間要進行IPV6報文通信,首先需要建立雙協(xié)議主機和NAR之間的各自IPV4 UDP隧道。雙協(xié)議主機之間通過各自IPV4 UDP隧道,穿透IPV4 NATs和IPV4網(wǎng)絡,通過各自NAR轉發(fā)功能和IPV6網(wǎng)絡路由尋址功能,實現(xiàn)雙協(xié)議主機之間IPV6報文互通。其中將發(fā)送方雙協(xié)議主機對應的NAR稱為源NAR;將接收方雙協(xié)議主機對應的NAR稱為目的NAR。
具體分為兩種情況位于NAT域的雙協(xié)議主機向位于IPV4網(wǎng)絡的雙協(xié)議主機發(fā)送IPV6報文;位于IPV6網(wǎng)絡的雙協(xié)議主機向位于NAT域的雙協(xié)議主機發(fā)送IPV6報文。下面介紹第一種情況的處理方法和過程,具體過程如圖4中數(shù)字表示的箭頭所示。第二種情況類似。
(1)位于NAT域的雙協(xié)議主機的HTM將需要發(fā)送的IPV6報文封裝在IPV4UDP報文中,其中IPV6報文的源地址是IPV6網(wǎng)絡接入路由器分配的IPV6地址,目的地址是目的雙協(xié)議主機的IPV6地址。
(2)封裝了IPV6報文的IPV4UDP報文通過IPV4NATs轉發(fā)到IPV4網(wǎng)絡,到達源NAR。
(3)源NAR收到后,從IPV4UDP報文中取出IPV6報文,直接轉發(fā)到IPV6網(wǎng)絡。
(4)由于該報文的IPV6地址符合IPV6報文路由尋址原理,該報文最終將通過IPV6路由系統(tǒng)傳送到目的NAR。
(5)目的NAR收到IPV6報文后,根據(jù)報文中的目的地址,從IPV4 UDP隧道映射關系文件中查找對應的UDP隧道,如果存在對應映射關系,則將IPV6報文封裝在IPV4 UDP報文中,轉發(fā)IPV4網(wǎng)絡。其中IPV4UDP報文使用的源端口號是目的NAR分配給雙協(xié)議主機使用的參數(shù),源IPV4地址是目的NAR的IPV4地址;目的端口號和目的IPV4地址是目的雙協(xié)議主機使用的參數(shù)。
(6)包含IPV6報文的IPV4 UDP報文到達目的雙協(xié)議主機。目的雙協(xié)議主機的HTM從IPV4 UDP報文中取出IPV6報文。
5、基于WEB方式的IPV6網(wǎng)絡接入路由器參數(shù)配置在建立雙協(xié)議主機和NAR之間的IPV4 UDP隧道過程中,雙協(xié)議主機需要知道IPV6網(wǎng)絡接入路由器在IPV4網(wǎng)絡側的IPV4服務地址。用戶可以通過手工配置方式在雙協(xié)議主機配置該參數(shù),但是不方便。
本方法提出采用WEB機制,幫助用戶選擇IPV6網(wǎng)絡接入路由器,自動配置所需參數(shù)。
WEB配置過程分為以下兩步,具體過程如圖5中數(shù)字表示的箭頭所示。
(1)NAR設備注冊過程NAR將設備信息,包括以下內容IPV4地址、設備名字、設備所在地區(qū)、服務資費,發(fā)布到NARP---WWW服務器。
(2)用戶查詢過程用戶通過WEB方式訪問NARP,根據(jù)WEB網(wǎng)頁的設備信息情況清單,選擇最合適的NAR,點擊確定后,自動將NAR的IPV4地址加入到雙協(xié)議主機通信配置文件。
附錄——IPV4 NATs類型測試算法根據(jù)IPV4 NATs處理外來IPV4報文的安全策略,可以分為restricted-NAT和cone-NAT;根據(jù)IPV4 NATs對內部IPV4報文的資源分配策略,可以分為symmetric NAT和asymmetric NAT;為此共有四種IPV4 NATs類型cone-asymmetric-nat、restricted-asymmetrict-nat、cone-symmetric-nat、restricted-symetric-nat。
通過以下基本算法,可以判斷IPV4 NATs類型(1)HTM向NAR發(fā)送cone-NAT測試請求消息,消息封裝在UDP報文中,UDP報文的目的地址和UDP端口號是NAR分配給HTM的UDP隧道專用資源。
(2)NAR取出UDP包的源地址和源端口地址,取出UDP包的目的地址和目的端口地址;將取出UDP包的源地址和源端口地址,和與取出目的地址不同的NAR另外一個IPV4地址作為NAR的cone-NAT測試響應消息內容;響應消息封裝在UDP報文中,以另外IPV4地址作為響應消息的UDP報文的源IPV4地址,向HTM發(fā)送;如果HTM收到,則確定HTM在cone-NAT域,否則跳到步驟(5)。
(3)如果HTM沒有收到cone-NAT測試響應消息,則HTM向NAR發(fā)送restricted-NAT測試請求消息,消息封裝在UDP報文中,UDP報文的目的地址和UDP端口號是NAR分配給HTM的UDP隧道專用資源。
(4)NAR取出UDP包的源地址和源端口地址,取出UDP包的目的地址和目的端口地址,以及在步驟(2)中獲取的UDP包的UDP包的源地址和源端口地址,作為NAR的restricted-NAT測試響應消息內容;響應消息封裝在UDP報文中,以取出目的UDP端口號和IPV4地址作為響應消息的UDP報文的源UDP端口號和IPV4地,向HTM發(fā)送;如果HTM收到,則確認HTM在restricted-NAT域。
(5)HTM向NAR發(fā)送symmetric NAT測試請求消息,消息封裝在UDP包中,UDP包的目的地址是NAR的另外IPV4地址。
(6)NAR取出UDP包的源地址和源端口地址,取出UDP包的目的地址和目的端口地址,作為symmetric NAT測試響應消息內容;響應消息封裝在UDP報文中,以取出目的UDP端口號和IPV4地址作為響應消息的UDP報文的源UDP端口號和IPV4地址,向HTM發(fā)送。
(7)HTM根據(jù)symmetric NAT測試響應消息、以前收到的cone-NAT測試響應消息或者restricted-NAT測試響應消息,判斷在源端口和IPV4地址相同,目的端口和IPV4地址不同情況下,IPV4 NATs分配的外部端口和外部IPV4地址是否相同。如果不同,則確定HTM在symmetric-NAT域;反之,在asymmetric-NAT域。
權利要求
1.一種IP網(wǎng)絡協(xié)議轉換的方法,其特征在于,為位于一個或多個IPV4NATs后面的IPV6/IPV4雙協(xié)議主機提供通用IPV6地址配置、支持IPV6/IPV4雙協(xié)議主機之間、IPV6/IPV4雙協(xié)議主機和IPV6主機之間的IPV6報文通信,該方法具體步驟如下步驟1基于WEB方式的IPV6網(wǎng)絡接入路由器參數(shù)配置;步驟2建立雙協(xié)議主機和NAR之間的IPV4 UDP隧道;步驟3主機之間的IPV6報文通信。
2.根據(jù)權利要求1所述IP網(wǎng)絡協(xié)議轉換的方法,其特征在于,其中步驟1——基于WEB方式的IPV6網(wǎng)絡接入路由器參數(shù)配置IPV6網(wǎng)絡接入路由器將設備信息,包括以下內容IPV4地址、設備名字、設備所在地區(qū)、服務資費,發(fā)布到NARP,供用戶選擇。
3.根據(jù)權利要求1所述IP網(wǎng)絡協(xié)議轉換的方法,其特征在于,其中步驟1——基于WEB方式的IPV6網(wǎng)絡接入路由器參數(shù)配置用戶采用WEB方式配置NAR的IPV4地址參數(shù),并將NAR的IPV4地址參數(shù)保存到雙協(xié)議主機的通信配置文件中。
4.根據(jù)權利要求1所述IP網(wǎng)絡協(xié)議轉換的方法,其特征在于,其中步驟2——建立雙協(xié)議主機和NAR之間IPV4 UDP隧道,雙協(xié)議主機與NAR建立IPV4 UDP隧道之前,從雙協(xié)議主機通信配置文件中獲取NAR的IPV4地址。
5.根據(jù)權利要求1所述IP網(wǎng)絡協(xié)議轉換的方法,其特征在于,其中步驟2——建立雙協(xié)議主機和NAR之間IPV4 UDP隧道,IPV6網(wǎng)絡接入路由器從雙協(xié)議主機發(fā)送的UDP報文中捕獲雙協(xié)議主機的外部UDP端口和IPV4地址參數(shù);然后分配給雙協(xié)議主機一個通用IPV6地址;同時分配給雙協(xié)議主機一個空閑UDP端口號,該端口號用于建立雙協(xié)議主機和NAR之間的IPV4 UDP隧道;最后將三種參數(shù)之間的映射關系保存在IPV6網(wǎng)絡接入路由器的IPV4 UDP隧道映射關系文件中。
6.根據(jù)權利要求1所述IP網(wǎng)絡協(xié)議轉換的方法,其特征在于,其中步驟2——建立雙協(xié)議主機和NAR之間IPV4 UDP隧道,IPV6網(wǎng)絡接入路由器分配給雙協(xié)議主機的是通用IPV6地址,該地址是一個在IPV6網(wǎng)絡中可路由的、屬于IPV6網(wǎng)絡接入路由器路由域的IPV6地址,不需要在IPV6地址中包含由IPV4 NATs分配的外部IPV4地址和外部UDP端口信息,也不需要包含特定地址前綴。
7.根據(jù)權利要求1所述IP網(wǎng)絡協(xié)議轉換的方法,其特征在于,其中步驟3——主機之間的IPV6報文通信,IPV6網(wǎng)絡接入路由器收到從IPV6網(wǎng)絡方向來的IPV6報文后,根據(jù)報文中的目的地址,從步驟2中建立的IPV4UDP隧道映射關系文件中查找對應的UDP隧道,如果存在對應映射關系,則將IPV6報文轉發(fā)到該映射所指示的UDP隧道。
8.根據(jù)權利要求1所述IP網(wǎng)絡協(xié)議轉換的方法,其特征在于,其中步驟3——主機之間的IPV6報文通信,步驟2中IPV6網(wǎng)絡接入路由器分配給雙協(xié)議主機的是一個在IPV6網(wǎng)絡中可路由的、屬于IPV6網(wǎng)絡接入路由器路由域的通用IPV6地址,主機之間進行IPV6報文通信時,將該地址作為IPV6報文中的源地址或者目的地址構建IPV6報文,符合IPV6報文路由尋址原理,該報文最終能夠尋址到達IPV6主機或者IPV6接入路由器。
全文摘要
本發(fā)明涉及計算機網(wǎng)絡通信技術領域,一種IPV6報文穿透IPV4NATs方法是一種IPV4和IPV6共存時期的網(wǎng)絡協(xié)議轉換技術,該方法主要解決以下問題為位于一個或多個IPV4 NATs后面的IPV6/IPV4雙協(xié)議主機提供通用IPV6地址配置、支持IPV6/IPV4雙協(xié)議主機之間、IPV6/IPV4雙協(xié)議主機和IPV6主機之間的IPV6報文通信。為了穿透IPV4NATs,IPV6報文被封裝在IPV4-UDP(IPV4-UDP,IPV4 User DatagramProtocol,IPV4用戶數(shù)據(jù)報協(xié)議)報文中。方法的特點1.分配的IPV6地址為通用IPV6地址,不需要在IPV6地址中包含捕獲的主機外部IPV4地址和外部端口參數(shù),也不需要向IANA申請?zhí)囟ǖ那熬Y。2.通過WEB方式獲取IPV6接入路由器的IPV4地址。3.支持IPV6報文穿透各種類型IPV4 NATs。
文檔編號H04L12/46GK1529480SQ200310100719
公開日2004年9月15日 申請日期2003年10月8日 優(yōu)先權日2003年10月8日
發(fā)明者蔡一兵, 石晶林, 劉敏, 李忠誠 申請人:中國科學院計算技術研究所