網(wǎng)絡(luò)操作系統(tǒng)課程論文
題目:基于策略的DNS 技術(shù)及其應(yīng)用摘要:DNS (Domain Name System,域名系統(tǒng))主要用來提供域名與IP 地址相互映射的網(wǎng)絡(luò)服務(wù) 關(guān)鍵詞:域名系統(tǒng) 域名解析DNS :是域名系統(tǒng)(Do
題目:基于策略的DNS 技術(shù)及其應(yīng)用
摘要:
DNS (Domain Name System,域名系統(tǒng))主要用來提供域名與IP 地址相互映射的網(wǎng)絡(luò)服務(wù) 關(guān)鍵詞:域名系統(tǒng) 域名解析
DNS :是域名系統(tǒng)(Domain Name System)的縮寫,指在Internet 中使用的分配名字和地址的機(jī)制。域名系統(tǒng)允許用戶使用友好的名字而不是難以記憶的數(shù)字——IP 地址來訪問Internet 上的主機(jī)。
DNS 使用了一個(gè)遍布全世界的層次型的分布式數(shù)據(jù)庫,它包括了Internet 上所有域名及IP 的對應(yīng)信息。數(shù)據(jù)庫的層次性允許將域名空間劃分成獨(dú)立的管理部分,成為域;數(shù)據(jù)庫的分布式特性則允許將數(shù)據(jù)庫的各個(gè)不同部分分配到不同網(wǎng)絡(luò)上的域名服務(wù)器上,這樣各域名服務(wù)器可以實(shí)現(xiàn)獨(dú)立的管理。
域名解析:就是將用戶提出的名字變換成網(wǎng)絡(luò)地址的方法和過程,從概念上說,域名解析是一個(gè)自上而下的過程。
域名的解析過程是域名解析服務(wù)器完成的。域名服務(wù)器通常管理域名空間中某部分的完整信息,該部分稱為“區(qū)域”,其中的信息可能來自檔案或另一個(gè)域名服務(wù)器。此域名服務(wù)器被稱為具有該區(qū)域的管理權(quán)(authority )。一個(gè)域名服務(wù)器可管理多個(gè)區(qū)域。在域名服務(wù)器上運(yùn)行一個(gè)服務(wù)進(jìn)程(在Unix 系統(tǒng)中,一般為named 進(jìn)程),該進(jìn)程為Internet 提供本區(qū)域內(nèi)計(jì)算機(jī)域名解析服務(wù)。使用最多的是DNS 的正向解析,即將域名轉(zhuǎn)換成IP 地址,將IP 地址轉(zhuǎn)換成域名的功能稱作反向解析。
一 基于策略的域名解析
用戶在應(yīng)用程序中輸入主機(jī)域名時(shí),DNS 服務(wù)器可以將此名稱解析為與之對應(yīng)地IP 地址。這種解析一般是靜態(tài)的,即域名與IP 地址是一一對應(yīng)地。
對于訪問量比較大的服務(wù)器,可配置多臺(tái)內(nèi)容相同的服務(wù)器(鏡像服務(wù)器),對用戶訪問進(jìn)行分流,實(shí)現(xiàn)負(fù)載均衡,這樣就出現(xiàn)一個(gè)域名對應(yīng)多個(gè)IP 地址情況。DNS 配置文件中一般會(huì)有類似下面的內(nèi)容: IN A 211.90.89.4 IN A 211.90.89.5
在這種查詢方式中,DNS 服務(wù)器是以動(dòng)態(tài)輪循的方式回應(yīng)請求的,即對第一個(gè)請求回應(yīng)的是地址211.90.89.4,下一個(gè)請求回應(yīng)地址就是211.90.89.5,以此類推。但這種方法并不能算作策略域名解析。
基于策略的域名解析應(yīng)比上面動(dòng)態(tài)輪循方式要智能得多,DNS 服務(wù)器可以根據(jù)客戶端所在網(wǎng)絡(luò)的不同,返回不同的解析結(jié)果;或者是DNS 服務(wù)器根據(jù)客戶端所在網(wǎng)絡(luò)的不同,應(yīng)用不同的安全策略,比如對內(nèi)網(wǎng)用戶提供遞歸解析服務(wù)的同時(shí)忽略外網(wǎng)用戶的遞歸解析請求。
基于策略的域名解析,帶來的最大好處就是可以在多線路接入網(wǎng)絡(luò)環(huán)境下實(shí)現(xiàn)路由最優(yōu)化。在Unix 平臺(tái)下,利用ISC BIND (Berkeley Internet name domain )軟件架設(shè)的DNS 服務(wù)器,有以下2種比較簡便的實(shí)現(xiàn)方法。
1. 利用Iptables BIND實(shí)現(xiàn)
,該方法的核心思想在與:DNS 服務(wù)器上運(yùn)行多個(gè)BIND ,每個(gè)BIND 具有不同
的配置文件和域名文件,分別監(jiān)聽在不同的端口上,為來自不同區(qū)域的用戶提供解
析。
缺省情況下,BIND 服務(wù)監(jiān)聽在53端口,通過配置可以讓BIND 運(yùn)行在不同的
IP 及端口上。在接到客戶端DNS 請求時(shí),根據(jù)客戶的IP 地址將請求重定向至不同的BIND 服務(wù)端口。BIND 響應(yīng)時(shí),再改寫相應(yīng)包的服務(wù)端口為標(biāo)準(zhǔn)的53端口,這樣就可以根據(jù)客戶端的IP 地址將不同的解析結(jié)果返回給客戶端。整個(gè)過程對于客戶端來說都是透明的。其實(shí)現(xiàn)的關(guān)鍵在于運(yùn)行不同的BIND 及運(yùn)用Iptables 進(jìn)行IP
地址及端口改寫操作。
2 利用BIND9 view語句實(shí)現(xiàn)
對于BIND8以及以前的版本來講,實(shí)現(xiàn)策略DNS 一般都采用第1中方法,但
從BIND9開始,提供了view 語句。通過view 語句和ACL (訪問控制列表)語句
協(xié)同工作,也可以實(shí)現(xiàn)根據(jù)預(yù)先定義好的策略,對來自不同網(wǎng)絡(luò)的用戶源IP ,解
析出不同的服務(wù)器IP 。
二 基于策略的域名解析的實(shí)例
現(xiàn)以某大學(xué)DNS server作為應(yīng)用實(shí)例,介紹如何利用BIND9實(shí)現(xiàn)基于策略的
域名解析。
1 應(yīng)用實(shí)例背景
由于通過CERNET 線路訪問教育網(wǎng)以外資源時(shí)速度很慢,很多高校都會(huì)申請
另一條線路來與CHINANET 或者UNINET 相連接,該大學(xué)城校園網(wǎng)采用的就是這樣的雙出口方案。采用雙出口后,校園網(wǎng)訪問公網(wǎng)速度慢的問題得到解決了,但反過來UNINET 用戶訪問校園網(wǎng)中服務(wù)器慢的問題卻更加突出了。
2 解決方案
該大學(xué)的校園網(wǎng)服務(wù)器(域名為www.czdxc.edu.cn )配置2個(gè)IP 地址:教育
網(wǎng)IP 地址(210.27.60.3),聯(lián)通網(wǎng)IP 地址(211.90.145.6),然后,在其DNS server 上增加相關(guān)配置,采用策略DNS 方式,使得當(dāng)用戶處于CERNET 網(wǎng)段訪問時(shí),會(huì)解析到210.27.60.3,處于其他網(wǎng)段的用戶則會(huì)解析到211.90.145.6
4校園網(wǎng)WWW 服務(wù)器的具體配置方法
在聯(lián)通網(wǎng)段和教育網(wǎng)網(wǎng)段各放一臺(tái)校園網(wǎng)WWW 服務(wù)器是一個(gè)最簡便的方法,但考慮到服務(wù)器的訪問量不是很大,從節(jié)省投資角度出發(fā),采用了為服務(wù)器增
加雙網(wǎng)卡的方案:
(1)為服務(wù)器配置兩塊網(wǎng)卡
第一塊:IP 地址210.27.60.3,掩碼255.255.255.0,網(wǎng)關(guān)210.27.60.1
第二塊:IP 地址211.90.145.6,掩碼255.255.255.224,網(wǎng)關(guān)211.90.145.30
(2)增加路由
routeadd-net 210.27.112.0 netmask 255.255.248.0 deveth0//到教育網(wǎng)的路由 routeadd-net 202.117.176.0 netmask 255.255.240.0 deveth0//到教育網(wǎng)的路由 routeadd default fw 211.90.145.30 dev eth1//到UNINET 的默認(rèn)路由
將上述命令寫入腳本,系統(tǒng)啟動(dòng)時(shí)就會(huì)加載這些路由信息。通過以上配置,
WWW 服務(wù)器就可以正常工作了,UNINET 用戶就可以通過校園網(wǎng)的UNINET
高速鏈路訪問WWW 服務(wù)器了。