侯冬青
(臨滄師范高等專科學(xué)校,云南 臨滄677000)
智能DNS在多出口局域網(wǎng)中的應(yīng)用研究*
侯冬青
(臨滄師范高等??茖W(xué)校,云南 臨滄677000)
在多出口局域網(wǎng)中合理配置策略路由實現(xiàn)了鏈路冗余,提高了內(nèi)網(wǎng)用戶訪問Internet資源的速度。然而,該方法未能實現(xiàn)數(shù)據(jù)流的雙向分配控制,外網(wǎng)用戶訪問內(nèi)網(wǎng)資源的速度和可靠性難以保證。本文采用BIND軟件實現(xiàn)域名的智能解析,滿足按照請求者所在的網(wǎng)域?qū)ν挥蛎龀霾煌慕馕?。智能DNS結(jié)合NAT技術(shù)實現(xiàn)了數(shù)據(jù)流的雙向分配控制,從而最大限度的提高了外網(wǎng)用戶訪問內(nèi)網(wǎng)資源的速度。
局域網(wǎng);智能DNS;BIND;NAT
目前,大多數(shù)校園網(wǎng)都租用多家ISP的鏈路作為網(wǎng)絡(luò)出口,以提高出口的穩(wěn)定性,加快Internet的訪問速度。臨滄師專校園網(wǎng)也不例外,租用CERNET、中國聯(lián)通和中國電信三家ISP的鏈路作為校園網(wǎng)的出口,網(wǎng)絡(luò)拓?fù)淙鐖D1所示。
圖1 校園網(wǎng)拓?fù)鋱D
NAT技術(shù)和策略路由的配置實現(xiàn),滿足了校園網(wǎng)用戶高速訪問Internet資源的需求。當(dāng)校園網(wǎng)用戶訪問的資源是由CERNET或聯(lián)通提供時,將數(shù)據(jù)包從CERNET鏈路或聯(lián)通鏈路轉(zhuǎn)發(fā)出去;當(dāng)校園網(wǎng)用戶訪問的資源是由其它ISP提供時,將數(shù)據(jù)包從電信鏈路轉(zhuǎn)發(fā)出去。而且,實現(xiàn)了鏈路負(fù)載均衡,當(dāng)CERNET或聯(lián)通鏈路出現(xiàn)擁塞、斷網(wǎng)時,可自動將流量分配至電信出口,有效的保證了網(wǎng)絡(luò)出口的暢通。
然而,這些配置還不能解決公網(wǎng)用戶訪問校園網(wǎng)內(nèi)部資源速度過慢的問題,因為不同運營商之間的網(wǎng)絡(luò)存在著互連互通瓶頸。如果只將一個域名對應(yīng)一個IP地址,不同ISP的用戶訪問學(xué)校內(nèi)部資源時就會受到跨網(wǎng)訪問的限制,影響訪問速度。只有將內(nèi)部服務(wù)器IP地址通過靜態(tài)NAT分別連接到CERNET、聯(lián)通和電信網(wǎng)絡(luò)上,并采用動態(tài)DNS自動解析,將不同網(wǎng)域的用戶訪問校園網(wǎng)內(nèi)部資源時解析到對應(yīng)網(wǎng)域的IP地址,從而實現(xiàn)數(shù)據(jù)流的雙向控制。
1.1 智能DNS工作原理
DNS域名解析是運行在TCP協(xié)議之上,負(fù)責(zé)主機(jī)域名和主機(jī)IP地址之間的相互轉(zhuǎn)換[1]。當(dāng)用戶在應(yīng)用程序中輸入主機(jī)域名時,DNS服務(wù)器可以將此域名解析為與之對應(yīng)的IP地址,反之也成立。通常實現(xiàn)DNS域名解析是靜態(tài)的過程,也就是將域名與IP地址進(jìn)行一一對應(yīng)。
智能DNS最基本的功能是DNS服務(wù)器可以智能的判斷訪問主機(jī)的用戶,然后根據(jù)不同的訪問者和事先設(shè)定的策略,把域名分別解析為不同的IP地址[2]。同樣的域名www.lcnc.edu.cn,如果訪問該域名的用戶來自聯(lián)通,會給用戶返回一個指向聯(lián)通服務(wù)器的IP地址;如果訪問該域名的用戶來自電信,會給用戶返回一個指向電信服務(wù)器的IP地址;而如果是CERNET用戶訪問會返回一個指向CERNET服務(wù)器的IP地址。通過這種智能解析方式,盡可能避免CERNET用戶去訪問電信網(wǎng)絡(luò),電信用戶去訪問CERNET以及聯(lián)通網(wǎng)絡(luò),因為,不同運營商之間的網(wǎng)絡(luò)存在著互連互通瓶頸。動態(tài)DNS服務(wù)工作流程如圖2所示。
圖2 智能DNS工作流程圖
當(dāng)用戶在運用程序中輸入域名時,程序會向本地DNS服務(wù)器提交域名解析請求;本地DNS服務(wù)器通過DNS解析的常規(guī)步驟查找到動態(tài)DNS服務(wù)器,并將用戶請求轉(zhuǎn)發(fā)至智能DNS服務(wù)器;智能DNS服務(wù)器根據(jù)請求者的IP地址確定客戶端所屬的網(wǎng)域,根據(jù)用戶所屬網(wǎng)域查找相應(yīng)的域名解析地址池,找到域名所對應(yīng)的IP地址;智能DNS服務(wù)器將域名解析結(jié)果返回給本地DSN服務(wù)器;本地DNS服務(wù)器將查詢結(jié)果保存到緩存,以備下次查找使用,同時將最終結(jié)果返回給用戶[3]。
1.2 Bind概述
目前,使用最為廣泛的開元智能域名解析軟件是由美國加州大學(xué)伯克利分校開發(fā)的BIND( Berkeley Internet Name Domain)[4]。在BIND中引入VIEW視圖,通過VIEW的策略判斷功能,可以將來自不同IP地址段的查詢請求響應(yīng)到不同的DNS解析。也就是說,當(dāng)用戶通過某個域名訪問網(wǎng)絡(luò)資源時,VIEW會根據(jù)請求者的IP地址在自己的列表里面進(jìn)行匹配,然后把匹配的結(jié)果返回給用戶[5]。但在實際解析過程中,VIEW判斷用戶來源的依據(jù)是本地DNS服務(wù)器的IP地址,而非用戶自身的IP地址。
BIND有主配置文件、日志文件、解析文件三部分組成。當(dāng)有DNS客戶端需要進(jìn)行域名解析時,守護(hù)進(jìn)程Named讀取主配置文件named.conf,通過解析文件查找到對應(yīng)的IP地址,并將查詢結(jié)果返回客戶端[6]。服務(wù)器中BIND軟件的組成如圖3所示
圖3 BIND組成圖
在邊界路由器上以靜態(tài)NAT的方式將需要向公網(wǎng)提供服務(wù)的私有IP地址分別映射到三個公網(wǎng)IP地址上,從而使公網(wǎng)用戶能通過這些IP地址訪問內(nèi)網(wǎng)資源。IP地址對應(yīng)關(guān)系如表1所示。
表1 lcnc.edu.cn主機(jī)與不同ISP地址之間的對于關(guān)系
BIND能夠在Unix、Linux或Windows環(huán)境下運行,因此,本方案以Windows Server 2003作為支撐平臺,采用BIND9.4.2軟件實現(xiàn)動態(tài)域名解析功能。安裝配置過程如下:
(1)安裝BIND
下載BIND9.4.2.zip,解壓后雙擊BINDInstall.exe進(jìn) 行 安 裝 ,默 認(rèn) 安 裝 路 徑 是“C: WINDOWSsystem32dns”。安裝完成后將named賬號設(shè)置比較復(fù)雜的密碼,并授予named賬號具有對DNS目錄的讀寫權(quán)限。
(2)配置BIND
以命令模式進(jìn)入C:WINDOWSsystem32dnsin目錄,執(zhí)行rndc-confgen-a命令在dnsetc目錄生成rndc.key文件,并執(zhí)行rndc-confgen>..etc ndc.conf在同一目錄下生成rndc.conf文件。
進(jìn)入etc目錄,用notepad命令分別生成named. conf、cernet.conf和cnc.conf文件。其中,cernet.conf和cnc.conf兩個文件列出教育科研和聯(lián)通IP地址段,并生成ACL庫,這兩個庫文件用于判斷用戶所在的網(wǎng)域。通過文本編輯器修改、編輯named.conf、cernet.conf和cnc.conf文件,具體內(nèi)容如下。
#判斷如果是教育網(wǎng)的地址范圍,則執(zhí)行此處,調(diào)用教育網(wǎng)解析文件進(jìn)行地址解析。
#判斷如果是聯(lián)通網(wǎng)的地址范圍,則執(zhí)行此處,調(diào)用聯(lián)通網(wǎng)解析文件進(jìn)行地址解析。
WINDOWSsystem32dnsetcmastercnc.def";//CNC網(wǎng)域?qū)?yīng)解析文件的位置和名稱。
#any;//表示其它所有外網(wǎng)地址域都解析為電信IP地址。
WINDOWSsystem32dnsetcmaster elecom.def";//其它網(wǎng)域?qū)?yīng)解析文件的位置和名稱。
};
在master文件夾中創(chuàng)建cernet.def、cnc.def和telecom.def三個解析文件,cernet.def具體內(nèi)容如下,其它兩個文件內(nèi)容類似。
$TTL 3600
www IN A 121.49.153.3//cen.def和telecom.def文件的www服務(wù)IP地址分別為221.213.200.211和218.63.53.227。
(3)啟動服務(wù)
在服務(wù)器開始菜單的【運行】對話框中輸入services.msc命令打開【服務(wù)】窗口,找到ISC BIND服務(wù),將該服務(wù)的登錄用戶改為本地系統(tǒng)用戶,啟動方式設(shè)置為“自動”,配置完成啟動服務(wù)即可。
(1)分別在校園網(wǎng)、教育網(wǎng)、聯(lián)通網(wǎng)和電信網(wǎng)中找一客戶端作為采樣點,采用nslookup命令測試對www.lcnc.edu.cn域名的解析,測試結(jié)果如表2所示。結(jié)果表明,在出口靜態(tài)NAT工作正常的情況下,智能DNS服務(wù)器均能返回給用戶正確的域名解析結(jié)果。
表2 www服務(wù)的解析結(jié)果
(2)在前一測試的基礎(chǔ)上,采用ping命令分別對以上IP地址進(jìn)行測試,對比響應(yīng)時間,測試結(jié)果如表3所示。結(jié)果表明,校園網(wǎng)用戶訪問校內(nèi)資源時響應(yīng)時間最短,用戶和訪問的地址在同一網(wǎng)域時次之,跨網(wǎng)域訪問響應(yīng)時間最長。由此得出,在訪問同一域名時,如果解析到的IP地址和用戶在同一網(wǎng)域,訪問速度最快。
表3 訪問www服務(wù)的響應(yīng)時間
通過以上測試可以看出,校園網(wǎng)智能DNS服務(wù)器的智能解析功能有效、可靠,可以針對用戶不同的訪問線路,返回對應(yīng)線路的IP地址,響應(yīng)時間大幅縮短,訪問速度大幅提升,達(dá)到方案設(shè)計的預(yù)期目標(biāo)。
該方案采用BIND9的VIEW功能實現(xiàn)了域名的智能解析,彌補(bǔ)了策略路由的不足。策略路由提高了校園網(wǎng)用戶訪問Internet的速度,而智能DNS方案為不同ISP用戶解析到同一網(wǎng)域的對應(yīng)IP地址,避免了跨網(wǎng)域訪問,提高了Internet用戶訪問校園網(wǎng)內(nèi)部資源的速度,從而實現(xiàn)了多出口網(wǎng)絡(luò)環(huán)境下數(shù)據(jù)流的雙向分配控制。
BIND判斷時是根據(jù)請求者的本地DNS服務(wù)器IP地址,而不是用戶自身IP地址。因此,為了避免由于本地DNS服務(wù)器設(shè)置錯誤而造成的跨網(wǎng)訪問,影響訪問速度,用戶在進(jìn)行網(wǎng)絡(luò)參數(shù)設(shè)置時要明確自己所屬的網(wǎng)域,并設(shè)置對應(yīng)的本地DNS服務(wù)器。
注釋及參考文獻(xiàn):
[1]Tanenbaum A S.Computer Networks(Fourth Edition)[M].北京:清華大學(xué)出版社,2008.
[2]Thomson P S.Dynamic Updates inthe Domain Name System(DNS UPDATE)[R].RFC 2136,1997.
[3]王亮.基于智能DNS技術(shù)下的多ISP校園網(wǎng)服務(wù)質(zhì)量優(yōu)化[J].科技信息,2011(33):102-103.
[4]Internet Systems Consortium.BIND 9 Administrator Reference Manual(9.3.2)[EB/OL].(2005).http://www.bind9.net/ manuals.
[5]楊柯,陳紀(jì)豪,盧春,等.基于Linux智能DNS系統(tǒng)的研究和實現(xiàn)[J].信息安全與通信保密,2011(10):72-75.
[6]李馥娟.智能域名解析技術(shù)在多出口校園網(wǎng)中的應(yīng)用[J].計算機(jī)與數(shù)字工程,2009(11):91-94.
TheApplication of Intelligent DNS in Multi-outlet LAN
HOU Dong-qing
(Lincang Teachers’College,Lincang,Yunnan 677000)
In the multi-outlet LAN routing strategy to achieve a rational allocation of lin k redundancy,which improves network users to access Internet resources speed.However,this approach failed to achieve two-way data flow distribution control,speed and reliability within the extranet users to access network resources is not guaranteed.This paper puts forward that using BIND software achieve domain name intelligent analysis,in order to satisfy the domain requesters on the same domain to make a different parsing.Intelligent DNS NAT technology achieves a two-way combination of distribution control data flow,which maximize improves the speed of extranet users accessing network resources.
LAN;intelligent DNS;BIND;NAT
TP393.18
A
1673-1891(2015)01-0049-04
2014-10-15
臨滄師范高等專科學(xué)校2014年自然基金項目“臨滄師范高等??茖W(xué)校校園網(wǎng)集成方案研究(項目編號:LCSZL2014005)。
侯冬青(1982-),男,云南江川人,講師,主要從事網(wǎng)絡(luò)技術(shù)及其教育等方面的教學(xué)與研究。