馮振
摘要:DNS域名解析系統(tǒng)是Internet上最基本的網(wǎng)絡(luò)服務(wù)之一,它負(fù)責(zé)將域名轉(zhuǎn)換成IP地址,也可以將主機(jī)名轉(zhuǎn)換成IP地址,在網(wǎng)絡(luò)應(yīng)用中必不可少。本文從Anycast技術(shù)在DNS系統(tǒng)中的應(yīng)用、Anycast技術(shù)工作機(jī)制、Anycast系統(tǒng)性能三個(gè)方面對(duì)anycast技術(shù)在分布式域名解析系統(tǒng)的應(yīng)用進(jìn)行了分析。
關(guān)鍵詞:IP城域網(wǎng);Anycast;分布式;DNS
DNS域名解析系統(tǒng)是Internet上最基本的網(wǎng)絡(luò)服務(wù)之一,它負(fù)責(zé)將域名轉(zhuǎn)換成IP地址,也可以將主機(jī)名轉(zhuǎn)換成IP地址,幾乎每個(gè)用戶的每次訪問都會(huì)使用到域名解析,是網(wǎng)絡(luò)應(yīng)用實(shí)現(xiàn)必不可少的前提。
1.Anycast技術(shù)及其在DNS系統(tǒng)中的應(yīng)用
Anycast最初是在RFC1546中提出并定義的,根據(jù)RFC1546的說明,IPv4的任播地址不同于IPv4的單播地址,它建議從IPv4的地址空間分配出一塊獨(dú)立的地址空間作為任播地址空間。RFC1546定義的這種任播沒有在IPv4網(wǎng)絡(luò)中得到廣泛使用,但是它的最初語義在IPv4得到廣泛使用:在IP網(wǎng)絡(luò)上,通過一個(gè)Anycast地址標(biāo)識(shí)一組提供特定服務(wù)的主機(jī),同時(shí)服務(wù)訪問方并不關(guān)心提供服務(wù)的具體是哪一臺(tái)主機(jī)(比如DNS或者鏡像服務(wù)),訪問該地址的報(bào)文可以被IP網(wǎng)絡(luò)路由到這一組目標(biāo)中的任何一臺(tái)主機(jī)上,它提供的是一種無狀態(tài)的、盡力而為的服務(wù)。在實(shí)際應(yīng)用中,Anycast采用將一個(gè)單播地址分配到處于Internet中多個(gè)不同物理位置的主機(jī)上,發(fā)送到這個(gè)主機(jī)的報(bào)文被網(wǎng)絡(luò)路由到路由協(xié)議度量的“最近”的目標(biāo)主機(jī)上。
基于Anycast這一通信模式的特點(diǎn),使它在IP網(wǎng)絡(luò)中具備了一定的應(yīng)用前景。例如DNS系統(tǒng)可以采用Anycast技術(shù)進(jìn)行構(gòu)建,DNS系統(tǒng)的服務(wù)IP共享相同的IP地址,用戶不需要特殊配置也不用關(guān)心訪問的是哪一臺(tái)DNS服務(wù)器,路由系統(tǒng)幫助用戶選擇“最近”的服務(wù),減輕了網(wǎng)絡(luò)的負(fù)載,相同的服務(wù)在網(wǎng)絡(luò)上冗余分布,增強(qiáng)了系統(tǒng)的可靠性。
2.Anycast技術(shù)工作機(jī)制
(1)根據(jù)最短路徑優(yōu)先原則,AS域內(nèi)不同位置的用戶所獲取的DNS服務(wù)器可能是不同的設(shè)備,該過程對(duì)用戶來說是透明的。
(2)當(dāng)用戶向DNS服務(wù)器發(fā)起解析請(qǐng)求時(shí),DNS服務(wù)器首先查詢?cè)O(shè)備緩存,尋找緩存中是否有用戶所需記錄,如果緩存中有該記錄,則直接返回給用戶,此次解析結(jié)束;如果緩存中沒有該記錄,DNS服務(wù)器則查詢本地ZONE,如果本地ZONE有該記錄,則直接返回結(jié)果給用戶,此次解析結(jié)束;如果本地ZONE沒有用戶記錄,則DNS服務(wù)器開始進(jìn)行遞歸查詢,遞歸查詢所攜帶的源IP地址是互聯(lián)接口IP(必須是公網(wǎng)IP地址)而不是服務(wù)IP地址。
(3)當(dāng)某一地市城域網(wǎng)內(nèi)一臺(tái)DNS服務(wù)器出現(xiàn)異常或宕機(jī)現(xiàn)象時(shí),該服務(wù)器停止對(duì)外發(fā)布服務(wù)IP地址,地市IP城域網(wǎng)內(nèi)部通過路由收斂,訪問該服務(wù)器的的流量將自動(dòng)引導(dǎo)到另外一臺(tái)DNS服務(wù)器,用戶的解析請(qǐng)求由另外一臺(tái)服務(wù)器自動(dòng)接管。
(4)當(dāng)某一地市城域網(wǎng)內(nèi)兩臺(tái)DNS服務(wù)器均出現(xiàn)異?;蝈礄C(jī)時(shí),兩臺(tái)服務(wù)器停止對(duì)外發(fā)布服務(wù)IP地址,地市IP城域網(wǎng)內(nèi)部通過路由收斂,訪問這兩臺(tái)DNS服務(wù)器的流量將通過缺省路由引導(dǎo)到省中心的兩臺(tái)DNS服務(wù)器,用戶的解析請(qǐng)求由省中心兩臺(tái)DNS自動(dòng)接管。
(5)當(dāng)省中心和某一地市的兩臺(tái)DNS服務(wù)器均出現(xiàn)異常或宕機(jī)時(shí),通過路由收斂,省中心和該地市用戶的DNS域名解析請(qǐng)求流量將引導(dǎo)到其他的地市,由其他地市的DNS服務(wù)器提供解析服務(wù)(需從該地市向省中心通過EBGP發(fā)布DNS服務(wù)IP地址)。
3.Anycast系統(tǒng)性能
基于anycast技術(shù)的分布式域名解析系統(tǒng)整體架構(gòu)具有可靠性、高效性、均衡性和安全性。
(1)可靠性?;赼nycast技術(shù)的分布式域名解析系統(tǒng)具備自動(dòng)冗余的特性,因此系統(tǒng)具有很高的可靠性。每個(gè)區(qū)域內(nèi)的DNS服務(wù)器只為該區(qū)域內(nèi)的用戶提供服務(wù),當(dāng)服務(wù)器出現(xiàn)異?;蝈礄C(jī)時(shí),網(wǎng)絡(luò)就會(huì)收回其路由宣告,這一過程是由網(wǎng)管系統(tǒng)或路由協(xié)議自動(dòng)來完成;如果路由宣告不因?yàn)榉?wù)器的異常或宕機(jī)而被收回,則會(huì)導(dǎo)致一些客戶端的附近形成“黑洞”,一個(gè)壞的DNS服務(wù)器節(jié)點(diǎn)將繼續(xù)接受用戶請(qǐng)求,導(dǎo)致附近的用戶無法得到服務(wù),在發(fā)生這種情況下,也只會(huì)影響一個(gè)區(qū)域內(nèi)的部分用戶,而不會(huì)影響到整個(gè)區(qū)域的用戶,因此大大的提高了系統(tǒng)整體的可靠性。
(2)均衡性。當(dāng)若干服務(wù)節(jié)點(diǎn)與客戶端距離相同時(shí),網(wǎng)絡(luò)會(huì)根據(jù)路由協(xié)議的算法選擇負(fù)載相對(duì)較輕、響應(yīng)時(shí)延相對(duì)較短的節(jié)點(diǎn)進(jìn)行服務(wù),這一特性從全局來看起到了負(fù)載均衡的效果。
(3)高效性。由于anycast在工作時(shí)會(huì)自動(dòng)將客戶端的請(qǐng)求路由至與其最近的服務(wù)節(jié)點(diǎn),因此使得系統(tǒng)的整體服務(wù)時(shí)延有了大幅的降低,這一點(diǎn)經(jīng)過大量的測(cè)試得到了證明。
(4)安全性?;赼nycast技術(shù)的分布式DNS域名解析系統(tǒng)安全性主要體現(xiàn)在防范DDos攻擊上。
4.結(jié)束語
綜上所述,基于anycast技術(shù)的分布式域名解析系統(tǒng)在可靠性、安全性、高效性、均衡性方面均有顯著的優(yōu)勢(shì)。由于Anycast節(jié)點(diǎn)上聯(lián)自治系統(tǒng)不同,接入方式存在多種多樣,很難形成統(tǒng)一、規(guī)范的節(jié)點(diǎn)部署方案,因此在利用IP anycast、BGP和OSPF技術(shù)部署分布式域名解析系統(tǒng)之前應(yīng)多方面考慮各種因素,在某一節(jié)點(diǎn)實(shí)施時(shí),需要引起足夠重視,詳細(xì)了解網(wǎng)絡(luò)情況,切忌認(rèn)為已形成統(tǒng)一模式而輕視單一節(jié)點(diǎn)建設(shè)。
參考文獻(xiàn):
[1]鄭三軍 《Anycast在DNS系統(tǒng)中的實(shí)踐》 北京郵電大學(xué)2008年碩士論文
[2]華山 《Anycast技術(shù)在運(yùn)營(yíng)商DNS中的應(yīng)用》 電信技術(shù) 2009