本申請涉及互聯(lián)網(wǎng)信息技術處理領域,尤其涉及一種域名解析的同步方法和設備。
背景技術:
隨著互聯(lián)網(wǎng)技術的發(fā)展,人們對于互聯(lián)網(wǎng)中的計算機可以通過網(wǎng)絡之間互連的協(xié)議(英文:Internet Protocol;縮寫:IP)地址進行定位,即在得到一個IP地址時,通過該IP地址可以確定互聯(lián)網(wǎng)中與該IP地址對應的計算機。
然而,由于IP地址不容易被人們記住,于是提出由域名來代替IP地址。但是,通過域名無法直接訪問該域名替代的IP地址對應的計算機。因此,在獲取到一個域名時,需要通過域名解析流程,將獲取的域名轉(zhuǎn)換為IP地址;利用得到的IP地址訪問該IP地址對應的計算機。
域名解析一般依靠域名服務(英文:Domain Name Service;縮寫:DNS)系統(tǒng)實現(xiàn)將域名映射為IP地址。域名服務系統(tǒng)是一種基于TCP/IP應用程序的分布式數(shù)據(jù)庫,提供主機名稱和IP地址之間的轉(zhuǎn)換。一般包含公共DNS和權威DNS。
其中,公共DNS在接收到域名查詢請求時,查詢本地緩存的解析結果;若查詢到該域名查詢請求中包含的域名對應的解析結果,則將查詢到的解析結果返回給用戶;若尚未查詢到該域名查詢請求中包含的域名對應的解析結果,則將待查詢的域名攜帶在查詢請求中發(fā)送給上一層的DNS(例如:本地DNS),請求上一層的DNS對該查詢請求中包含的域名進行解析。上一層的DNS在接收到該查詢請求時,確定待查詢的域名是否能夠被解析,若能夠被直接解析,則返回解析結果;若不能夠被直接解析,則通過查詢本地緩存的域名解析結果 確定是否可以確定該域名對應的解析結果。
在尚未查詢到該域名對應的解析結果時,則將待查詢的域名攜帶在查詢請求中發(fā)送給再上一層的DNS,依次執(zhí)行上述操作,直至查詢到該域名對應的解析結果時結束操作。
權威DNS是指經(jīng)過授權對域名進行解析的服務器,同時具備將解析結果授權給其他DNS的功能。例如:域名com的頂級服務器可以授權域名ABC.com的權威服務器為NS.ABC.com。授權DNS將解析結果發(fā)送給公共DNS,使得公共DNS將接收到的解析結果存儲在本地。
但是,在實際應用中,由于各個公共DNS獲取權威DNS的解析結果的時間不同,導致權威DNS得到的解析結果在不同公共DNS上的生效時間不同,存在一定的延遲,大大降低公共DNS進行域名解析的解析效率。
技術實現(xiàn)要素:
有鑒于此,本申請實施例提供了一種域名解析的同步方法和設備,用于解決目前公共DNS進行域名解析存在的解析效率低的問題。
一種域名解析的同步方法,包括:
接收權威域名服務DNS設備發(fā)送的解析結果,其中,所述解析結果是在所述權威DNS設備內(nèi)部緩存的解析結果發(fā)生更新后發(fā)送的;
將接收到的所述解析結果發(fā)送給不同的公共DNS設備。
一種域名解析的同步設備,包括:
接收單元,用于接收權威域名服務DNS設備發(fā)送的解析結果,其中,所述解析結果是在所述權威DNS設備內(nèi)部緩存的解析結果發(fā)生更新后發(fā)送的;
發(fā)送單元,用于將接收到的所述解析結果發(fā)送給不同的公共DNS設備。
本申請有益效果如下:
本申請實施例接收權威域名服務DNS設備發(fā)送的解析結果,所述解析結 果是在所述權威DNS設備內(nèi)部緩存的解析結果發(fā)生更新后發(fā)送的;將接收到的所述解析結果發(fā)送給不同的公共DNS設備。這樣,當權威DNS設備解析域名產(chǎn)生新的解析結果時,通過權威DNS設備與公共DNS設備之間的第三設備,將在權威DNS設備中新生效的解析結果發(fā)送給公共DNS設備,確保公共DNS設備緩存中生效的解析結果與權威DNS設備中生效的解析結果一致,避免了由于公共DNS設備中緩存刷新時間的不一致使得解析結果生效時間出現(xiàn)延遲的問題,有效地提升公共DNS設備進行域名解析的解析效率。
附圖說明
為了更清楚地說明本發(fā)明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡要介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域的普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本申請實施例提供的一種域名解析的同步方法的流程示意圖;
圖2為本申請實施例提供的一種域名解析的同步設備的結構示意圖;
圖3為本申請實施例提供的一種域名解析的同步系統(tǒng)的結構示意圖。
具體實施方式
為了實現(xiàn)本申請目的,本申請實施例提供了一種域名解析的同步方法和設備,接收權威域名服務DNS設備發(fā)送的解析結果,所述解析結果是在所述權威DNS設備內(nèi)部緩存的解析結果發(fā)生更新后發(fā)送的;將接收到的所述解析結果發(fā)送給不同的公共DNS設備。這樣,當權威DNS設備解析域名產(chǎn)生新的解析結果時,通過權威DNS設備與公共DNS設備之間的第三設備,將在權威DNS設備中新生效的解析結果發(fā)送給公共DNS設備,確保公共DNS設備緩存中生效的解析結果與權威DNS設備中生效的解析結果一致,避免了由于公共DNS設備中緩存刷新時間的不一致使得解析結果生效時間出現(xiàn)延遲的問題,有效地提升公共DNS設備進行域名解析的解析效率。
下面結合說明書附圖對本申請各個實施例作進一步地詳細描述。顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒旧暾堉械膶嵤├?,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本申請保護的范圍。
圖1為本申請實施例提供的一種域名解析的同步方法的流程示意圖。所述方法可以如下所述。本申請實施例的執(zhí)行主體可以是一個應用客戶端,也可以是一個第三方服務器,這里不做限定。
步驟101:第三方服務器接收權威DNS設備發(fā)送的解析結果。
其中,所述解析結果是在所述權威DNS設備內(nèi)部緩存的解析結果發(fā)生更新后發(fā)送的。
在步驟101中,第三方服務器分別可以與權威DNS設備進行信息交互,也可以與公共DNS設備進行信息交互。
例如:第三方服務器利用超文本傳輸協(xié)議(英文:Hypertext Transfer Protocol;縮寫:HTTP)與權威DNS設備進行信息交互;以及利用HTTP與公共DNS設備進行信息交互。
一旦權威DNS設備中發(fā)生解析結果更新,那么權威DNS設備將更新后的解析結果主動發(fā)送給第三方服務器。
此外,當?shù)谌椒掌鳙@取待解析的域名時,將所述待解析的域名攜帶在解析生產(chǎn)請求中發(fā)送給權威DNS設備。
其中,所述解析生產(chǎn)請求用于請求所述權威DNS設備對所述待解析的域名進行解析并返回解析結果。
具體地,第三方服務器在接收到的待解析的域名時,將所述待解析的域名攜帶在解析生產(chǎn)請求中發(fā)送給權威DNS設備,以請求權威DNS設備對所述待解析的域名進行解析并返回解析結果。
具體地,第三方服務器在接收到的待解析的域名時,向權威DNS設備發(fā)送解析結果查詢請求,該解析結果查詢請求中包含待解析的域名,該解析結果 查詢請求用于確定接收到的待解析的域名是否存在對應的解析結果。
在權威DNS設備確定該待解析的域名不存在對應的解析結果時,將查詢結果發(fā)送給第三方服務器,此時,第三方服務器將所述待解析的域名攜帶在解析生產(chǎn)請求中發(fā)送給權威DNS設備。
權威DNS設備在接收到解析生產(chǎn)請求時,對該待解析的域名進行解析,得到該待解析的域名對應的解析結果,并更新緩存中的解析結果。
此時,權威DNS設備將待解析的域名對應的解析結果發(fā)送給第三方服務器。
除此之外,由于權威DNS設備在接收到解析生產(chǎn)請求時,對待解析的域名進行解析,得到該待解析的域名對應的解析結果,并對內(nèi)部緩存的解析結果進行了更新,那么權威DNS設備可以只將待解析的域名對應的解析結果發(fā)送給第三方服務器,也可以將更新后的解析結果發(fā)送給第三方服務器。
也就是說,第三方服務器發(fā)送的解析生產(chǎn)請求可以視為權威DNS設備向第三方服務器發(fā)送解析結果的觸發(fā)條件。
需要說明的是,權威DNS設備向第三方服務器發(fā)送的解析結果可以是當前生效的解析結果,也可以是設定時間范圍內(nèi)生效的解析結果。
此外,第三方服務器接收所述權威DNS設備發(fā)送的解析結果的方式還可以是:
第三方服務器實時向所述權威DNS設備發(fā)送查詢請求。
其中,所述查詢請求用于請求所述權威DNS設備發(fā)送更新后的解析結果。
第三方服務器接收所述權威DNS設備發(fā)送的查詢結果。
其中,所述查詢結果中包含所述權威DNS設備最新更新的解析結果。
需要說明的是,“最新更新的解析結果”可以理解為距離所述權威DNS設備接收到查詢請求的時間最近的一個更新操作后的解析結果。
步驟102:第三方服務器將接收到的所述解析結果發(fā)送給不同的公共DNS設備。
在步驟102中,第三方服務器在接收到權威DNS設備發(fā)送的解析結果時,利用HTTP將接收到的所述解析結果發(fā)送給不同的公共DNS設備。
這樣,對于公共DNS設備內(nèi)部緩存中的解析結果,更新這些解析結果不再依賴于設定的更新時間,而是根據(jù)第三方服務器實時獲取的權威DNS設備更新的解析結果進行實時更新,確保公共DNS設備緩存中生效的解析結果與權威DNS設備中生效的解析結果一致,避免了由于公共DNS設備中緩存刷新時間的不一致使得解析結果的生效時間出現(xiàn)延遲的問題,有效地提升公共DNS進行域名解析的解析效率。
可選地,在將接收到的所述解析結果發(fā)送給不同的公共DNS設備時,所述方法還包括:
將接收到的所述解析結果發(fā)送給每一個公共DNS設備對應的客戶端設備,使所述客戶端設備將接收到的所述解析結果存儲在本地。
具體地,將接收到的所述解析結果發(fā)送給每一個公共DNS設備對應的客戶端設備,包括:
向每一個公共DNS設備對應的客戶端設備發(fā)送心跳數(shù)據(jù)包。
其中,所述心跳數(shù)據(jù)包用于確定所述客戶端設備是否在線。
在第一設定時間范圍內(nèi)接收到所述客戶端設備發(fā)送的響應數(shù)據(jù)包時,將接收到的所述解析結果發(fā)送給所述客戶端設備。
在第一設定時間范圍內(nèi)尚未接收到所述客戶端設備發(fā)送的響應數(shù)據(jù)包時,所述方法還包括:
定時向所述客戶端設備發(fā)送心跳數(shù)據(jù)包,并在接收到所述客戶端設備發(fā)送的響應數(shù)據(jù)包時,將第二設定時間范圍內(nèi)接收到的所述解析結果發(fā)送給所述客戶端設備。
需要說明的是,第一設定時間范圍可以根據(jù)心跳數(shù)據(jù)包的有效時間進行確定,也可以根據(jù)實際需要確定;第二設定時間范圍要比第一設定時間范圍大。
也就意味著,當確定客戶端設備不在線時,定時向所述客戶端設備發(fā)送心 跳數(shù)據(jù)包,截止到再接收到所述客戶端設備發(fā)送的響應數(shù)據(jù)包時,第三方服務器可能多次接收到權威DNS設備發(fā)送的解析結果,因此,第三方服務器可以將從客戶端設備不在線到客戶端設備在線期間的解析結果一并發(fā)送給客戶端設備,以保證客戶端設備內(nèi)部的解析結果與權威DNS設備內(nèi)的解析結果保持一致。
通過本申請實施例的方案,接收權威域名服務DNS設備發(fā)送的解析結果,所述解析結果是在所述權威DNS設備內(nèi)部緩存的解析結果發(fā)生更新后發(fā)送的;將接收到的所述解析結果發(fā)送給不同的公共DNS設備。這樣,當權威DNS設備解析域名產(chǎn)生新的解析結果時,通過權威DNS設備與公共DNS設備之間的第三設備,將在權威DNS設備中新生效的解析結果發(fā)送給公共DNS設備,確保公共DNS設備緩存中生效的解析結果與權威DNS設備中生效的解析結果一致,避免了由于公共DNS設備中緩存刷新時間的不一致使得解析結果生效時間出現(xiàn)延遲的問題,有效地提升公共DNS設備進行域名解析的解析效率。
圖2為本申請實施例提供的一種域名解析的同步設備的結構示意圖。所述同步設備包括:接收單元21和發(fā)送單元22,其中:
接收單元21,用于接收權威域名服務DNS設備發(fā)送的解析結果,其中,所述解析結果是在所述權威DNS設備內(nèi)部緩存的解析結果發(fā)生更新后發(fā)送的;
發(fā)送單元22,用于將接收到的所述解析結果發(fā)送給不同的公共DNS設備。
可選地,所述發(fā)送單元23,還用于在將接收到的所述解析結果發(fā)送給不同的公共DNS設備時,將接收到的所述解析結果發(fā)送給每一個公共DNS設備對應的客戶端設備,使所述客戶端設備將接收到的所述解析結果存儲在本地。
具體地,所述發(fā)送單元23,具體用于向每一個公共DNS設備對應的客戶端設備發(fā)送心跳數(shù)據(jù)包,其中,所述心跳數(shù)據(jù)包用于確定所述客戶端設備是否在線;
在第一設定時間范圍內(nèi)接收到所述客戶端設備發(fā)送的響應數(shù)據(jù)包時,將接收到的所述解析結果發(fā)送給所述客戶端設備。
具體地,所述發(fā)送單元23,還用于在第一設定時間范圍內(nèi)尚未接收到所述客戶端設備發(fā)送的響應數(shù)據(jù)包時,定時向所述客戶端設備發(fā)送心跳數(shù)據(jù)包,并在接收到所述客戶端設備發(fā)送的響應數(shù)據(jù)包時,將第二設定時間范圍內(nèi)接收到的所述解析結果發(fā)送給所述客戶端設備。
可選地,所述同步設備還包括:獲取單元23,其中:
所述獲取單元23,用于獲取待解析的域名,并將所述待解析的域名攜帶在解析生產(chǎn)請求中發(fā)送給權威域名服務DNS設備,其中,所述解析生產(chǎn)請求用于請求所述權威DNS設備對所述待解析的域名進行解析并返回解析結果;
所述接收單元21,具體用于接收權威DNS設備發(fā)送的解析結果,其中,所述解析結果中包含所述待解析的域名對應的解析結果。
需要說明的是,本發(fā)明實施例所涉及的同步設備可以通過硬件方式實現(xiàn),也可以通過軟件方式實現(xiàn),這里不做限定。
圖3為本申請實施例提供的一種域名解析的同步系統(tǒng)的結構示意圖。所述同步系統(tǒng)包括:權威DNS設備31、公共DNS設備32、同步設備33和與所述公共DNS設備對應的客戶端設備34,其中:
所述權威DNS設備31,用于將更新后的解析結果發(fā)送給同步設備33;
所述同步設備33,用于接收所述權威DNS設備發(fā)送的解析結果,所述解析結果是在所述權威DNS設備內(nèi)部緩存的解析結果發(fā)生更新后發(fā)送的,并將接收到的所述解析結果發(fā)送給不同的公共DNS設備32。
此外,所述同步設備33,還用于將接收到的所述解析結果發(fā)送給每一個公共DNS設備對應的客戶端設備34,使所述客戶端設備將接收到的所述解析結果存儲在本地。
具體地,所述同步設備33,具體用于向每一個公共DNS設備32對應的客戶端設備34發(fā)送心跳數(shù)據(jù)包,其中,所述心跳數(shù)據(jù)包用于確定所述客戶端設備34是否在線;
在第一設定時間范圍內(nèi)接收到所述客戶端設備34發(fā)送的響應數(shù)據(jù)包時, 將接收到的所述解析結果發(fā)送給所述客戶端設備34。
所述同步設備33,具體用于在第一設定時間范圍內(nèi)尚未接收到所述客戶端設備34發(fā)送的響應數(shù)據(jù)包時,定時向所述客戶端設備34發(fā)送心跳數(shù)據(jù)包,并在接收到所述客戶端設備34發(fā)送的響應數(shù)據(jù)包時,將第二設定時間范圍內(nèi)接收到的所述解析結果發(fā)送給所述客戶端設備34。
所述同步設備33,還用于在接收權威DNS設備31發(fā)送的解析結果之前,獲取待解析的域名,并將所述待解析的域名攜帶在解析生產(chǎn)請求中發(fā)送給權威DNS設備31,其中,所述解析生產(chǎn)請求用于請求所述權威DNS設備31對所述待解析的域名進行解析并返回解析結果。
所述同步設備33,具體用于接收權威DNS設備31發(fā)送的解析結果,其中,所述解析結果中包含所述待解析的域名對應的解析結果。
當權威DNS設備解析域名產(chǎn)生新的解析結果時,通過權威DNS設備與公共DNS設備之間的同步設備,將在權威DNS設備中新生效的解析結果發(fā)送給公共DNS設備,確保公共DNS設備緩存中生效的解析結果與權威DNS設備中生效的解析結果一致,避免了由于公共DNS設備中緩存刷新時間的不一致使得解析結果生效時間出現(xiàn)延遲的問題,有效地提升公共DNS設備進行域名解析的解析效率。
本領域的技術人員應明白,本申請的實施例可提供為方法、裝置(設備)、或計算機程序產(chǎn)品。因此,本申請可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本申請可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。
本申請是參照根據(jù)本申請實施例的方法、裝置(設備)和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機 或其他可編程數(shù)據(jù)處理設備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
盡管已描述了本申請的優(yōu)選實施例,但本領域內(nèi)的技術人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。
顯然,本領域的技術人員可以對本申請進行各種改動和變型而不脫離本申請的范圍。這樣,倘若本申請的這些修改和變型屬于本申請權利要求及其等同技術的范圍之內(nèi),則本申請也意圖包含這些改動和變型在內(nèi)。