一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法及設(shè)備的制作方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法及設(shè)備,該方法包括:通信雙方的一方網(wǎng)絡(luò)地址發(fā)生變化時(shí),地址發(fā)生變化的本端通信方通過(guò)原有的網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)穿透通道將更新后的網(wǎng)絡(luò)地址信息發(fā)送給對(duì)端通信方;對(duì)端通信方接收到更新后的網(wǎng)絡(luò)地址信息,向本端通信方的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息;本端通信方接收到探測(cè)消息后,建立起網(wǎng)絡(luò)地址更新后的本端通信方與對(duì)端通信方間的新NAT穿透通道。其中一種設(shè)備為與網(wǎng)絡(luò)地址發(fā)生變化的本端通信設(shè)備進(jìn)行通信的對(duì)端通信設(shè)備,用于接收到更新后的網(wǎng)絡(luò)地址信息,向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息。采用本發(fā)明,在不中斷現(xiàn)有P2P業(yè)務(wù)情況下,實(shí)現(xiàn)網(wǎng)絡(luò)地址經(jīng)常變化的環(huán)境下的NAT穿透。
【專(zhuān)利說(shuō)明】一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法及設(shè)備
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信領(lǐng)域的網(wǎng)絡(luò)地址轉(zhuǎn)換技術(shù),尤其涉及一種在網(wǎng)絡(luò)地址變化環(huán)境下點(diǎn)對(duì)點(diǎn)(P2P, Peer-to-Peer)的網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT, Network Address Translation)穿透方法及設(shè)備。
【背景技術(shù)】
[0002]NAT作為一種廣泛部署的網(wǎng)絡(luò)技術(shù),在解決安全與網(wǎng)際協(xié)議(IP)地址短缺方面發(fā)揮著巨大的作用。如圖1所示為現(xiàn)有的一種典型的NAT網(wǎng)絡(luò)架構(gòu),基于該網(wǎng)絡(luò)架構(gòu)的訪(fǎng)問(wèn)機(jī)制為:內(nèi)網(wǎng)A、B中的主機(jī)分別通過(guò)NAT-A和NAT-B訪(fǎng)問(wèn)外部的因特網(wǎng)(Internet)資源,外部主機(jī)不能主動(dòng)向內(nèi)網(wǎng)發(fā)起連接,這一特性在解決安全與IP地址短缺領(lǐng)域發(fā)揮著重大的作用,但也制約著許多應(yīng)用的部署,如P2P通信、網(wǎng)絡(luò)會(huì)議、音視頻傳輸?shù)?,阻礙了互聯(lián)網(wǎng)的發(fā)展。因此NAT的穿透技術(shù)就成為了研究的發(fā)展方向。
[0003]目前,已有多種NAT穿透方案,例如NAT的UDP簡(jiǎn)單穿越(STUN, Simple TraversalofUDP over NATs)、通過(guò) Relay 方式穿越 NAT (TURN, Traversal Using Relay NAT)、中間盒、交互連接建立(ICE)等。它們中的大多數(shù)技術(shù)是在外網(wǎng)部署一臺(tái)服務(wù)器(Server),如圖1所示,通過(guò)此Server實(shí)現(xiàn)NAT的穿透技術(shù)。
[0004]在P2P通信上可以利用ICE技術(shù)的RFC5245標(biāo)準(zhǔn)較好地穿透NAT。但在地址經(jīng)常變化的環(huán)境下,例如Mobile IP、DHCP租約到期、WIFI網(wǎng)絡(luò)變化等環(huán)境下,采用現(xiàn)有的NAT穿透方案存在的問(wèn)題是:當(dāng)設(shè)備地址發(fā)送改變時(shí),使用ICE或其他的NAT穿透方案需重新建立ICE流程,而重新建立ICE流程將會(huì)中斷現(xiàn)有的通信、或耗費(fèi)大量的時(shí)間用以ICE的重新建立。針對(duì)這種地址經(jīng)常變化的環(huán)境下NAT穿透存在的問(wèn)題,在不中斷現(xiàn)有P2P業(yè)務(wù)情況下,目前還沒(méi)有相應(yīng)的解決方案。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本發(fā)明的主要目的在于提供一種NAT穿透方法及設(shè)備,在不中斷現(xiàn)有P2P業(yè)務(wù)情況下,實(shí)現(xiàn)網(wǎng)絡(luò)地址經(jīng)常變化的環(huán)境下的NAT穿透。
[0006]為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0007]一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,該方法包括:
[0008]通信雙方的一方網(wǎng)絡(luò)地址發(fā)生變化時(shí),網(wǎng)絡(luò)地址發(fā)生變化的本端通信方通過(guò)原有的網(wǎng)絡(luò)地址轉(zhuǎn)換NAT穿透通道,將更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信方;
[0009]所述對(duì)端通信方根據(jù)接收的所述更新后的網(wǎng)絡(luò)地址信息或所述更新后的網(wǎng)絡(luò)地址的反射地址信息向所述本端通信方的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息;
[0010]本端通信方接收到所述探測(cè)消息后,建立起網(wǎng)絡(luò)地址更新后的本端通信方與對(duì)端通信方間的新NAT穿透通道。
[0011]其中,所述將更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信方后,該方法還包括:所述本端通信方在所述更新后的網(wǎng)絡(luò)地址上監(jiān)聽(tīng)所述對(duì)端通信方發(fā)送的所述探測(cè)消息。
[0012]其中,根據(jù)所述更新后的網(wǎng)絡(luò)地址信息向所述本端通信方的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息具體包括:
[0013]從所述更新后的網(wǎng)絡(luò)地址信息中提取出所述更新后的網(wǎng)絡(luò)地址,通過(guò)NAT地址直接向本端通信方的所述更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息或者,
[0014]從所述更新后的網(wǎng)絡(luò)地址信息中提取出所述更新后的網(wǎng)絡(luò)地址,獲取對(duì)端通信方向更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息需要的第二反射地址,通過(guò)所述第二發(fā)射地址向本端通信方的所述更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息。
[0015]其中,根據(jù)所述更新后的網(wǎng)絡(luò)地址的反射地址信息向所述本端通信方的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息具體包括:
[0016]從所述更新后的網(wǎng)絡(luò)地址的反射地址信息中提取出更新后的網(wǎng)絡(luò)地址的反射地址,先通過(guò)NAT地址向所述更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息,再將所述探測(cè)消息轉(zhuǎn)發(fā)給本端通信方的所述更新后的網(wǎng)絡(luò)地址;或者,
[0017]從所述更新后的網(wǎng)絡(luò)地址的反射地址信息中提取出更新后的網(wǎng)絡(luò)地址的反射地址,獲取對(duì)端通信方向更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息需要的第二反射地址,通過(guò)所述第二發(fā)射地址向本端通信方的所述更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息,再將所述探測(cè)消息轉(zhuǎn)發(fā)給本端通信方的所述更新后的網(wǎng)絡(luò)地址。
[0018]一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透設(shè)備,該設(shè)備為網(wǎng)絡(luò)地址發(fā)生變化的本端通信設(shè)備,用于通過(guò)原有的NAT穿透通道將更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信設(shè)備;接收到對(duì)端通信設(shè)備發(fā)送的探測(cè)消息后,建立起網(wǎng)絡(luò)地址更新后的所述本端通信設(shè)備與所述對(duì)端通信設(shè)備間的新NAT穿透通道。
[0019]其中,所述本端通信設(shè)備,進(jìn)一步用于將更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信設(shè)備的情況下,在所述更新后的網(wǎng)絡(luò)地址上監(jiān)聽(tīng)對(duì)端通信設(shè)備發(fā)送的所述探測(cè)消息。
[0020]一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透設(shè)備,該設(shè)備為與網(wǎng)絡(luò)地址發(fā)生變化的本端通信設(shè)備進(jìn)行通信的對(duì)端通信設(shè)備,用于接收到本端通信設(shè)備發(fā)送的更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息,根據(jù)所述更新后的網(wǎng)絡(luò)地址信息或所述更新后的網(wǎng)絡(luò)地址的反射地址信息向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息。
[0021]其中,所述對(duì)端通信設(shè)備,進(jìn)一步用于根據(jù)所述更新后的網(wǎng)絡(luò)地址信息向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息的情況下,從所述更新后的網(wǎng)絡(luò)地址信息中提取出所述更新后的網(wǎng)絡(luò)地址,通過(guò)NAT地址直接向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送所述探測(cè)消息;或者,
[0022]從所述更新后的網(wǎng)絡(luò)地址信息中提取出所述更新后的網(wǎng)絡(luò)地址,獲取對(duì)端通信方向更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息需要的第二反射地址,通過(guò)所述第二發(fā)射地址向本端通信方的更新后的網(wǎng)絡(luò)地址發(fā)送所述探測(cè)消息。
[0023]其中,所述對(duì)端通信設(shè)備,進(jìn)一步用于根據(jù)所述更新后的網(wǎng)絡(luò)地址的反射地址信息向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息的情況下,從所述更新后的網(wǎng)絡(luò)地址的反射地址信息中提取出更新后的網(wǎng)絡(luò)地址的反射地址,先通過(guò)NAT地址向所述更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息,再將所述探測(cè)消息轉(zhuǎn)發(fā)給所述本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址;或者,
[0024]從所述更新后的網(wǎng)絡(luò)地址的反射地址信息中提取出更新后的網(wǎng)絡(luò)地址的反射地址,獲取對(duì)端通信方向更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息需要的第二反射地址,通過(guò)所述第二發(fā)射地址向本端通信方的所述更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息,再將所述探測(cè)消息轉(zhuǎn)發(fā)給本端通信方的所述更新后的網(wǎng)絡(luò)地址。
[0025]一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,該方法包括:
[0026]通信雙方的一方網(wǎng)絡(luò)地址發(fā)生變化時(shí),網(wǎng)絡(luò)地址發(fā)生變化的本端通信方通過(guò)原有的NAT穿透通道,將更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信方;
[0027]從所述更新后的網(wǎng)絡(luò)地址的反射地址信息中提取出更新后的網(wǎng)絡(luò)地址的反射地址,獲取對(duì)端通信方向更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送第一探測(cè)消息需要的第二反射地址,通過(guò)原有的NAT穿透通道將所述第二反射地址發(fā)送給本端通信方;
[0028]通過(guò)所述第二發(fā)射地址向所述更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送所述第一探測(cè)消息后,將所述第一探測(cè)消息轉(zhuǎn)發(fā)給本端通信方的更新后的網(wǎng)絡(luò)地址;
[0029]通過(guò)所述更新后的網(wǎng)絡(luò)地址經(jīng)由所述更新后的網(wǎng)絡(luò)地址的反射地址向第二反射地址發(fā)送第二探測(cè)消息,將所述第二探測(cè)消息轉(zhuǎn)發(fā)給對(duì)端通信方,建立起網(wǎng)絡(luò)地址更新后的本端通信方與對(duì)端通信方間的新NAT穿透通道。
[0030]其中,該方法還包括:所述本端通信方在所述更新后的網(wǎng)絡(luò)地址上監(jiān)聽(tīng)所述對(duì)端通信方發(fā)送的所述第一探測(cè)消息。
[0031]本發(fā)明的方法是通信雙方的一方網(wǎng)絡(luò)地址發(fā)生變化時(shí),網(wǎng)絡(luò)地址發(fā)生變化的本端通信方通過(guò)原有的NAT穿透通道,將更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信方;對(duì)端通信方接收到更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息,根據(jù)接收的更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息向本端通信方的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息;本端通信方接收到探測(cè)消息后,建立起網(wǎng)絡(luò)地址更新后的本端通信方與對(duì)端通信方間的新NAT穿透通道。
[0032]采用本發(fā)明,由于通信雙方的一方能獲知網(wǎng)絡(luò)地址發(fā)送變化的另一方的更新后的網(wǎng)絡(luò)地址信息,因此,可以建立起網(wǎng)絡(luò)地址更新后的本端通信方與對(duì)端通信方間的新NAT穿透通道,用以后續(xù)通信交互,并不需要中斷業(yè)務(wù)。從而,在不中斷現(xiàn)有P2P業(yè)務(wù)情況下,實(shí)現(xiàn)網(wǎng)絡(luò)地址經(jīng)常變化的環(huán)境下的NAT穿透。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0033]圖1為現(xiàn)有典型的NAT網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)示意圖;
[0034]圖2為本發(fā)明方法的實(shí)現(xiàn)流程圖;
[0035]圖3為本發(fā)明實(shí)施例的地址變化方位于外網(wǎng)時(shí)的Restricted Cone型NAT拓?fù)浣Y(jié)構(gòu)示意圖;
[0036]圖4為本發(fā)明實(shí)施例的地址變化方位于Full cone NAT時(shí)的Restricted Cone型NAT拓?fù)浣Y(jié)構(gòu)示意圖;
[0037]圖5為本發(fā)明實(shí)施例的地址變化方位于外網(wǎng)時(shí)Symmetric型NAT拓?fù)浣Y(jié)構(gòu)示意圖;[0038]圖6為本發(fā)明實(shí)施例的地址變化方位于Full cone NAT中時(shí)Symmetric型NAT拓?fù)浣Y(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0039]下面結(jié)合附圖對(duì)技術(shù)方案的實(shí)施作進(jìn)一步的詳細(xì)描述。
[0040]一種NAT穿透方法,如圖2所示,該方法的實(shí)現(xiàn)流程包括以下步驟:
[0041]步驟101、通信雙方的一方網(wǎng)絡(luò)地址發(fā)生變化時(shí),地址發(fā)生變化的本端通信方通過(guò)原有的NAT穿透通道將地址更新消息發(fā)送給對(duì)端通信方,指示本端通信方的網(wǎng)絡(luò)地址將變化到更新后的網(wǎng)絡(luò)地址。
[0042]這里,地址更新消息中攜帶本端通信方的更新后的網(wǎng)絡(luò)地址或更新后的網(wǎng)絡(luò)地址的反射地址。需要指出的是:攜帶本端通信方的更新后的網(wǎng)絡(luò)地址的消息并不限于所述地址更新消息。本端通信方的更新后的網(wǎng)絡(luò)地址或更新后的網(wǎng)絡(luò)地址的反射地址,也可以封裝在更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息中發(fā)送給對(duì)端通信方,由對(duì)端通信方進(jìn)行解析和提取。
[0043]步驟102、對(duì)端通信方接收到地址更新消息,若提取出的是更新后的網(wǎng)絡(luò)地址,則直接向本端通信方的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息;若提取出的是更新后的網(wǎng)絡(luò)地址的反射地址,則先向更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息,再將探測(cè)消息轉(zhuǎn)發(fā)給本端通信方的更新后的網(wǎng)絡(luò)地址。
[0044]步驟103、本端通信方接收到對(duì)端通信方發(fā)送的探測(cè)消息后,建立起該更新后的網(wǎng)絡(luò)地址與對(duì)端通信方網(wǎng)絡(luò)地址間的新NAT穿透通道。
[0045]這里,由于對(duì)端通信方能獲取到本端通信方的網(wǎng)絡(luò)地址變更,能向本端通信方變更后的網(wǎng)絡(luò)地址發(fā)送消息,從而在本端通信方更新后的網(wǎng)絡(luò)地址與對(duì)端通信方網(wǎng)絡(luò)地址間建立新的NAT穿透通道,以便后續(xù)的消息交互,無(wú)需中斷業(yè)務(wù),重新建立流程,從而在不中斷現(xiàn)有P2P業(yè)務(wù)情況下,實(shí)現(xiàn)網(wǎng)絡(luò)地址經(jīng)常變化的環(huán)境下的NAT穿透。
[0046]綜上所述,采用本發(fā)明的方案,能實(shí)現(xiàn)網(wǎng)絡(luò)地址經(jīng)常變化的環(huán)境下的NAT穿透,實(shí)現(xiàn)P2P業(yè)務(wù)的不中斷切換,例如VoIP的不中斷切換。在地址發(fā)生更新后不需要重新建立ICE的流程,例如地址收集、地址優(yōu)先級(jí)排序、連通性測(cè)試、SDP信息交換等。而且,本發(fā)明的方案不需要中間節(jié)點(diǎn)的參與,可完全實(shí)現(xiàn)P2P通信的切換,從而加速了新的NAT穿透通道的建立。
[0047]本發(fā)明在地址變化環(huán)境下的場(chǎng)景主要有全向NAT (Full Cone NAT)、受限NAT(Restricted Cone NAT)、端 口受限 NAT (Port Restricted Cone NAT)以及對(duì)稱(chēng) NAT(Symmetric NAT)等四種類(lèi)型的NAT拓?fù)渚W(wǎng)絡(luò)架構(gòu)對(duì)應(yīng)的流程,以下通過(guò)實(shí)施例來(lái)進(jìn)一步說(shuō)明本發(fā)明,對(duì)各個(gè)場(chǎng)景分別進(jìn)行說(shuō)明。另,對(duì)本文所有圖中的IP地址和相應(yīng)的端口號(hào)在此做一說(shuō)明:LA表示未發(fā)生地址變化方的地址,NA表示NAT的反射地址,RA表示發(fā)生了地址變化方的地址,粗線(xiàn)表示原有NAT穿透通道。
[0048]實(shí)施例1:對(duì)端通信方(主機(jī)A)位于受限NAT/端口受限NAT,地址變化的本端通信方(主機(jī)B)位于外網(wǎng)中。
[0049]如圖3所示為受限NAT/端口受限NAT,主機(jī)A位于NAT網(wǎng)中,主機(jī)B位于外網(wǎng)中。
[0050]當(dāng)內(nèi)網(wǎng)中的主機(jī)A的地址變化時(shí),可采用現(xiàn)有的NAT方案,比如STUN實(shí)現(xiàn)NAT穿透。當(dāng)外網(wǎng)的設(shè)備B地址由原地址201.23.123.1變化到更新后地址201.23.123.2時(shí)。由于受限NAT/端口受限NAT的性質(zhì)決定了采用更新后地址201.23.123.2將不能發(fā)送數(shù)據(jù)到設(shè)備A上(反方向可以)。因此,針對(duì)此場(chǎng)景,NAT穿透方案包括以下內(nèi)容:
[0051]Al:主機(jī)B將更新后地址201.23.123.2通過(guò)原地址201.23.123.1發(fā)送給NAT地址202.12.1.2:1111,即采用原有NAT穿透通道,指示地址將變化到更新后地址201.23.123.2。并在更新后地址201.23.123.2上監(jiān)聽(tīng)來(lái)自NAT的消息;
[0052]A2 =NAT將消息轉(zhuǎn)發(fā)給主機(jī)A ;
[0053]A3:主機(jī)A接收到主機(jī)B的消息后,提取更新后地址201.23.123.2,并通過(guò)NAT的反射地址202.12.1.2:1111向主機(jī)B的201.23.123.2發(fā)送探測(cè)消息;
[0054]A4:主機(jī)B接收至IJ A的探測(cè)消息后,可將原Α、Β (Β_1,201.23.123.1)間的通信切換化到 Α、Β (Β-2,201.23.123.2)上。
[0055]稍后主機(jī)B可將原地址201.23.123.1地址釋放,例如在DHCP中歸還地址池。
[0056]需要指出的是:如果是端口受限ΝΑΤ,則在Al中主機(jī)B需將201.23.123.2:6678通過(guò)201.23.123.1:5678發(fā)送給主機(jī)A (通過(guò)NAT的202.12.1.2:1111轉(zhuǎn)發(fā))。A3中主機(jī)A接收到主機(jī)B的消息后,提取201.23.123.2:6678,并通過(guò)NAT地址202.12.1.2:1111向主機(jī)Β201.23.123.2:6678發(fā)送消息。Α4中主機(jī)B接收到A的消息后,可將原Α、B (Β-1,201.23.123.1:5678)間的通信變化到 Α、Β (Β-2,201.23.123.2:6678)上。
[0057]實(shí)施例2:對(duì)端通信方(主機(jī)Α)位于受限MT/端口受限NAT中,地址變化的本端通信方(主機(jī)B)位于全向NAT中。
[0058]如圖4所示,主機(jī)A位于受限NAT中,主機(jī)B位于全向NAT中。
[0059]當(dāng)主機(jī)A的地址變化時(shí),由于NAT-B為全向ΝΑΤ,可采用現(xiàn)有的NAT方案實(shí)現(xiàn)NAT穿透。當(dāng)主機(jī)B的地址變化時(shí)的NAT穿透方案包括以下內(nèi)容:
[0060]B1:主機(jī) B 獲取更新后地址 192.168.1.3:6678 的反射地址 201.23.123.2:3333 ;
[0061]Β2:通過(guò)原地址 192.168.1.2:5678 將反射地址 201.23.123.2:3333 經(jīng)
201.23.123.1:2222發(fā)送給NAT-A地址202.12.1.2:1111,即采用原有NAT穿透通道,指示地址將變化到更新后地址。并在更新后地址192.168.1.3:6678上監(jiān)聽(tīng)來(lái)自NAT-B的消息;
[0062]Β3 =NAT-A將消息轉(zhuǎn)發(fā)給主機(jī)A ;
[0063]Β4:主機(jī)A接收到主機(jī)B的消息后,提取更新后地址201.23.123.2:3333,并通過(guò)NAT-A 的 202.12.1.2:1111 向 NAT-B 的 201.23.123.2:3333 發(fā)送探測(cè)消息;
[0064]Β5 =NAT-B將從201.23.123.2:3333接收的探測(cè)消息轉(zhuǎn)發(fā)給主機(jī)Β192.168.1.3:6678 ;
[0065]Β6:主機(jī)B接收到探測(cè)消息后,可將原Α、Β (Β_1,192.168.1.2:5678)間的通信切換到 Α、Β (Β-2,192.168.1.3:6678)上。
[0066]實(shí)施例3:對(duì)端通信方(主機(jī)Α)位于對(duì)稱(chēng)(Symmetric)型NAT中,地址發(fā)生變化的本端通信方(主機(jī)B)位于外網(wǎng)中。
[0067]如圖5所示,主機(jī)A在對(duì)稱(chēng)NAT中,主機(jī)B位于外網(wǎng)中。
[0068]當(dāng)內(nèi)網(wǎng)地址發(fā)生變化時(shí)可采用現(xiàn)有NAT方案實(shí)現(xiàn)NAT穿透。當(dāng)外網(wǎng)主機(jī)的地址發(fā)送變化時(shí)的NAT穿透方案包括以下內(nèi)容:
[0069]Cl:主機(jī) B 將更新后地址 201.23.123.2:6678 通過(guò)原地址 201.23.123.1:5678 發(fā)送給NAT地址202.12.1.2:1111,即采用原有NAT穿透通道,指示地址將變化到更新后地址201.23.123.2:6678,并在更新后地址201.23.123.2:6678上監(jiān)聽(tīng)來(lái)自NAT的消息;
[0070]C2 =NAT將消息轉(zhuǎn)發(fā)給主機(jī)A ;
[0071]C3:主機(jī)A接收到主機(jī)B的消息后,提取更新后地址201.23.123.2:6678 ;
[0072]C4:主機(jī) A 獲取發(fā)往 201.23.123.2:6678 的反射地址 202.12.1.3:2111(第二反射地址);
[0073]C5:主機(jī)A通過(guò)反射地址202.12.1.3:2111向主機(jī)B201.23.123.2:6678發(fā)送探測(cè)消息。
[0074]C6:主機(jī)B接收到A的消息后,可將原A、B (B-1,201.23.123.1:5678)間的通信切換到A、B (B-2,201.23.123.2:6678)上。實(shí)現(xiàn)變化后的NAT穿透。
[0075]實(shí)施例4:對(duì)端通信方(主機(jī)A)位于對(duì)稱(chēng)NAT中,地址發(fā)生變化的本端通信方(主機(jī)B)位于全向NAT中。
[0076]如圖6所示,主機(jī)A位于對(duì)稱(chēng)NAT中,當(dāng)?shù)刂钒l(fā)生變化的本端通信方(主機(jī)B)位于全向NAT中時(shí)的NAT穿透方案包括以下內(nèi)容:
[0077]Dl:主機(jī)B獲取更新后地址192.168.1.3:6678的反射地址NA:201.23.123.2:3222 ;
[0078]D2:主機(jī) B 通過(guò) 192.168.1.2:5678 將反射地址 201.23.123.2:3222 經(jīng)原地址
201.23.123.1:2222發(fā)送給NAT-A地址202.12.1.2:1111,即采用原有NAT穿透通道,指示地址將變化到更新后地址。并在更新后地址192.168.1.3:6678上監(jiān)聽(tīng)來(lái)自NAT-B的消息;
[0079]D3 =NAT-A將消息轉(zhuǎn)發(fā)給主機(jī)A ;
[0080]D4:主機(jī)A接收到主機(jī)B的消息后,提取更新后地址201.23.123.2:3222 ;
[0081]D5:主機(jī) A 向 NAT-A 獲取發(fā)往 201.23.123.2:3222 的反射地址 202.12.1.3:2111(第二反射地址);
[0082]D6:主機(jī) A 通過(guò)反射地址 202.12.1.3:2111 向 NAT-B 的 201.23.123.2:3222 發(fā)送
探測(cè)消息;
[0083]D7 =NAT-B將從201.23.123.2:3222接收的探測(cè)消息轉(zhuǎn)發(fā)給主機(jī)B192.168.1.3:6678 ;
[0084]D8:主機(jī)B接收到探測(cè)消息后,可將原A、B (B-1,192.168.1.2:5678)間的通信切換到 A、B (B-2, RA: 192.168.1.3:6678)上。
[0085]實(shí)施例5:對(duì)端通信方(主機(jī)Α)位于對(duì)稱(chēng)NAT中,地址變化的本端通信方(主機(jī)B)位于受限NAT端口受限NAT/對(duì)稱(chēng)NAT中。
[0086]如圖6所示,在對(duì)稱(chēng)NAT中,當(dāng)?shù)刂钒l(fā)生變化的本端通信方(主機(jī)B)位于受限NAT/端口受限NAT/對(duì)稱(chēng)NAT中時(shí)(圖6中的ΝΑΤ-Β)的NAT穿透方案包括以下內(nèi)容:
[0087]El:主機(jī)B獲取更新后地址192.168.1.3:6678的反射地址NA:201.23.123.2:3222 ;
[0088]Ε2:主機(jī) B 通過(guò) 192.168.1.2:5678 將反射地址 201.23.123.2:3222 經(jīng)原地址
201.23.123.1:2222發(fā)送給NAT-A地址202.12.1.2:1111,即采用原有NAT穿透通道,指示地址將變化到更新后地址。并在更新后地址192.168.1.3:6678上監(jiān)聽(tīng)來(lái)自NAT-B的消息;
[0089]Ε3 =NAT-A將消息轉(zhuǎn)發(fā)給主機(jī)A ;[0090]E4:主機(jī)A接收到主機(jī)B的消息后,提取更新后地址201.23.123.2:3222 ;
[0091]E5:主機(jī) A 向 NAT-A 獲取發(fā)往 201.23.123.2:3222 的反射地址 202.12.1.3:2111(第二反射地址);
[0092]E6:主機(jī) A 通過(guò) 192.168.0.2:1234 將反射地址 202.12.1.3:2111 經(jīng)201.12.1.2:1111 發(fā)送給 NAT-B 的 201.23.123.1:2222 (原 NAT 穿透通道);
[0093]E7:主機(jī)A通過(guò)反射地址202.12.1.3:2111向201.23.123.2:3222發(fā)送探測(cè)消息(第一探測(cè)消息);
[0094]這里,NAT-B將從201.23.123.2:3222接收到的探測(cè)消息轉(zhuǎn)發(fā)給主機(jī)B192.168.1.3:6678。上述E6、E7沒(méi)有先后順序。
[0095]E8 =NAT-B將從201.23.123.1:2222接收的消息(上述E6中的消息)轉(zhuǎn)發(fā)給主機(jī)B的 192.168.1.2:5678 ;
[0096]E9:主機(jī)B接收到 E8 中的消息后通過(guò) 192.168.1.3:6678 經(jīng)由 201.23.123.2:3222向NAT-A的202.12.1.3:2111發(fā)送探測(cè)消息(第二探測(cè)消息)。
[0097]這里,NAT-A將從202.12.1.3:2111接收到的探測(cè)消息轉(zhuǎn)發(fā)給主機(jī)A。當(dāng)主機(jī)A和主機(jī)B分別接收到對(duì)方發(fā)送的探測(cè)消息后,完成了更新后地址的NAT穿透;
[0098]E10:主機(jī) B 將原 A、B (B-1,192.168.1.2:5678)間的通信切換到 A、B (B-2,192.168.1.3:6678)上。
[0099]一種NAT穿透設(shè)備,該設(shè)備分網(wǎng)絡(luò)地址發(fā)生變化的本端通信設(shè)備和對(duì)端通信設(shè)備,其中,網(wǎng)絡(luò)地址發(fā)生變化的本端通信設(shè)備,用于通過(guò)原有的NAT穿透通道將更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信設(shè)備;接收到對(duì)端通信設(shè)備發(fā)送的探測(cè)消息后,建立起網(wǎng)絡(luò)地址更新后的所述本端通信設(shè)備與所述對(duì)端通信設(shè)備間的新NAT穿透通道。
[0100]這里,所述更新后的網(wǎng)絡(luò)地址信息為:向?qū)Χ送ㄐ旁O(shè)備指示本端通信設(shè)備的網(wǎng)絡(luò)地址將變化到所述更新后的網(wǎng)絡(luò)地址的信息。
[0101]這里,本端通信設(shè)備,進(jìn)一步用于將更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信設(shè)備的情況下,在更新后的網(wǎng)絡(luò)地址上監(jiān)聽(tīng)對(duì)端通信設(shè)備發(fā)送的探測(cè)消息。
[0102]與網(wǎng)絡(luò)地址發(fā)生變化的本端通信設(shè)備進(jìn)行通信的對(duì)端通信設(shè)備,用于接收到本端通信設(shè)備發(fā)送的更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息,根據(jù)更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息。
[0103]這里,對(duì)端通信設(shè)備,進(jìn)一步用于根據(jù)更新后的網(wǎng)絡(luò)地址信息向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息的情況下,從更新后的網(wǎng)絡(luò)地址信息中提取出更新后的網(wǎng)絡(luò)地址,通過(guò)NAT地址或者對(duì)端通信設(shè)備新的反射地址直接向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送所述探測(cè)消息。
[0104]或者,對(duì)端通信設(shè)備,進(jìn)一步用于根據(jù)更新后的網(wǎng)絡(luò)地址的反射地址信息向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息的情況下,從更新后的網(wǎng)絡(luò)地址的反射地址信息中提取出更新后的網(wǎng)絡(luò)地址的反射地址,先通過(guò)NAT地址或者對(duì)端通信設(shè)備新的反射地址向更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息,再將探測(cè)消息轉(zhuǎn)發(fā)給本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址。
[0105]以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1.一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,其特征在于,該方法包括: 通信雙方的一方網(wǎng)絡(luò)地址發(fā)生變化時(shí),網(wǎng)絡(luò)地址發(fā)生變化的本端通信方通過(guò)原有的網(wǎng)絡(luò)地址轉(zhuǎn)換NAT穿透通道,將更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信方; 所述對(duì)端通信方根據(jù)接收的所述更新后的網(wǎng)絡(luò)地址信息或所述更新后的網(wǎng)絡(luò)地址的反射地址信息向所述本端通信方的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息; 本端通信方接收到所述探測(cè)消息后,建立起網(wǎng)絡(luò)地址更新后的本端通信方與對(duì)端通信方間的新NAT穿透通道。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信方后,該方法還包括:所述本端通信方在所述更新后的網(wǎng)絡(luò)地址上監(jiān)聽(tīng)所述對(duì)端通信方發(fā)送的所述探測(cè)消息。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,根據(jù)所述更新后的網(wǎng)絡(luò)地址信息向所述本端通信方的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息具體包括: 從所述更新后的網(wǎng)絡(luò)地址信息中提取出所述更新后的網(wǎng)絡(luò)地址,通過(guò)NAT地址直接向本端通信方的所述更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息或者, 從所述更新后的網(wǎng)絡(luò)地址信息中提取出所述更新后的網(wǎng)絡(luò)地址,獲取對(duì)端通信方向更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息需要的第二反射地址,通過(guò)所述第二發(fā)射地址向本端通信方的所述更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息。
4.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,根據(jù)所述更新后的網(wǎng)絡(luò)地址的反射地址信息向所述本端通信方的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息具體包括:` 從所述更新后的網(wǎng)絡(luò)地址的反射地址信息中提取出更新后的網(wǎng)絡(luò)地址的反射地址,先通過(guò)NAT地址向所述更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息,再將所述探測(cè)消息轉(zhuǎn)發(fā)給本端通信方的所述更新后的網(wǎng)絡(luò)地址;或者, 從所述更新后的網(wǎng)絡(luò)地址的反射地址信息中提取出更新后的網(wǎng)絡(luò)地址的反射地址,獲取對(duì)端通信方向更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息需要的第二反射地址,通過(guò)所述第二發(fā)射地址向本端通信方的所述更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息,再將所述探測(cè)消息轉(zhuǎn)發(fā)給本端通信方的所述更新后的網(wǎng)絡(luò)地址。
5.一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透設(shè)備,其特征在于,該設(shè)備為網(wǎng)絡(luò)地址發(fā)生變化的本端通信設(shè)備,用于通過(guò)原有的NAT穿透通道將更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信設(shè)備;接收到對(duì)端通信設(shè)備發(fā)送的探測(cè)消息后,建立起網(wǎng)絡(luò)地址更新后的所述本端通信設(shè)備與所述對(duì)端通信設(shè)備間的新NAT穿透通道。
6.根據(jù)權(quán)利要求5所述的設(shè)備,其特征在于,所述本端通信設(shè)備,進(jìn)一步用于將更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信設(shè)備的情況下,在所述更新后的網(wǎng)絡(luò)地址上監(jiān)聽(tīng)對(duì)端通信設(shè)備發(fā)送的所述探測(cè)消息。
7.一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透設(shè)備,其特征在于,該設(shè)備為與網(wǎng)絡(luò)地址發(fā)生變化的本端通信設(shè)備進(jìn)行通信的對(duì)端通信設(shè)備,用于接收到本端通信設(shè)備發(fā)送的更新后的網(wǎng)絡(luò)地址信息或更新后的網(wǎng)絡(luò)地址的反射地址信息,根據(jù)所述更新后的網(wǎng)絡(luò)地址信息或所述更新后的網(wǎng)絡(luò)地址的反射地址信息向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息。
8.根據(jù)權(quán)利要求7所述的設(shè)備,其特征在于,所述對(duì)端通信設(shè)備,進(jìn)一步用于根據(jù)所述更新后的網(wǎng)絡(luò)地址信息向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息的情況下,從所述更新后的網(wǎng)絡(luò)地址信息中提取出所述更新后的網(wǎng)絡(luò)地址,通過(guò)NAT地址直接向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送所述探測(cè)消息;或者, 從所述更新后的網(wǎng)絡(luò)地址信息中提取出所述更新后的網(wǎng)絡(luò)地址,獲取對(duì)端通信方向更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息需要的第二反射地址,通過(guò)所述第二發(fā)射地址向本端通信方的更新后的網(wǎng)絡(luò)地址發(fā)送所述探測(cè)消息。
9.根據(jù)權(quán)利要求7所述的設(shè)備,其特征在于,所述對(duì)端通信設(shè)備,進(jìn)一步用于根據(jù)所述更新后的網(wǎng)絡(luò)地址的反射地址信息向本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址發(fā)送探測(cè)消息的情況下,從所述更新后的網(wǎng)絡(luò)地址的反射地址信息中提取出更新后的網(wǎng)絡(luò)地址的反射地址,先通過(guò)NAT地址向所述更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息,再將所述探測(cè)消息轉(zhuǎn)發(fā)給所述本端通信設(shè)備的更新后的網(wǎng)絡(luò)地址;或者, 從所述更新后的網(wǎng)絡(luò)地址的反射地址信息中提取出更新后的網(wǎng)絡(luò)地址的反射地址,獲取對(duì)端通信方向更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息需要的第二反射地址,通過(guò)所述第二發(fā)射地址向本端通信方的所述更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送探測(cè)消息,再將所述探測(cè)消息轉(zhuǎn)發(fā)給本端通信方的所述更新后的網(wǎng)絡(luò)地址。
10.一種網(wǎng)絡(luò)地址轉(zhuǎn)換穿透方法,其特征在于,該方法包括: 通信雙方的一方網(wǎng)絡(luò)地址發(fā)生變化時(shí),網(wǎng)絡(luò)地址發(fā)生變化的本端通信方通過(guò)原有的NAT穿透通道,將更新后的網(wǎng)絡(luò)地址的反射地址信息發(fā)送給對(duì)端通信方; 從所述更新后的網(wǎng)絡(luò)地址的反射地址信息中提取出更新后的網(wǎng)絡(luò)地址的反射地址,獲取對(duì)端通信方向更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送第一探測(cè)消息需要的第二反射地址,通過(guò)原有的NAT穿透通道將所述第二反射地址發(fā)送給本端通信方; 通過(guò)所述第二發(fā)射地址向所述更新后的網(wǎng)絡(luò)地址的反射地址發(fā)送所述第一探測(cè)消息后,將所述第一探測(cè)消息轉(zhuǎn)發(fā)給本端通信方的更新后的網(wǎng)絡(luò)地址;` 通過(guò)所述更新后的網(wǎng)絡(luò)地址經(jīng)由所述更新后的網(wǎng)絡(luò)地址的反射地址向第二反射地址發(fā)送第二探測(cè)消息,將所述第二探測(cè)消息轉(zhuǎn)發(fā)給對(duì)端通信方,建立起網(wǎng)絡(luò)地址更新后的本端通信方與對(duì)端通信方間的新NAT穿透通道。
11.根據(jù)權(quán)利要求10所述的方法,其特征在于,該方法還包括:所述本端通信方在所述更新后的網(wǎng)絡(luò)地址上監(jiān)聽(tīng)所述對(duì)端通信方發(fā)送的所述第一探測(cè)消息。
【文檔編號(hào)】H04L29/12GK103873600SQ201210528106
【公開(kāi)日】2014年6月18日 申請(qǐng)日期:2012年12月10日 優(yōu)先權(quán)日:2012年12月10日
【發(fā)明者】陳軍, 陶偉成 申請(qǐng)人:中興通訊股份有限公司