如何利用Linux構(gòu)建免費(fèi)的DNS服務(wù)器
如何利用Linux 構(gòu)建免費(fèi)的DNS 服務(wù)器實(shí)驗(yàn)背景:小諾公司目前的網(wǎng)絡(luò)環(huán)境是所有用戶都可以上外網(wǎng),而且使用的D NS 是通過DHCP 服務(wù)器獲取得到的,DHCP 服務(wù)器上填寫的DNS 地址為公網(wǎng)上一
如何利用Linux 構(gòu)建免費(fèi)的DNS 服務(wù)器
實(shí)驗(yàn)背景:
小諾公司目前的網(wǎng)絡(luò)環(huán)境是所有用戶都可以上外網(wǎng),而且使用的D NS 是通過DHCP 服務(wù)器獲取得到的,DHCP 服務(wù)器上填寫的DNS 地址為公網(wǎng)上一臺注冊的DNS 服務(wù)器。而小諾公司并沒有搭建DNS 服務(wù)器。隨著業(yè)務(wù)的增加,小諾公司員工上網(wǎng)的頻率越來越大,由于域名解析的問題經(jīng)常造成網(wǎng)絡(luò)的擁塞,而且經(jīng)常有員工抱怨瀏覽的網(wǎng)頁在工作期間(瀏覽高峰期)總是超時(shí)?,F(xiàn)在公司要求使用Linux 搭建一臺緩存型DNS 服務(wù)器,將員工經(jīng)常瀏覽的網(wǎng)站和對應(yīng)的IP 地址緩存到本地DNS 服務(wù)器上,當(dāng)員工再次訪問訪問過的網(wǎng)站時(shí),只需要在本地緩存DNS 服務(wù)器上進(jìn)行域名解析,從而降低了網(wǎng)絡(luò)擁塞問題。
安裝緩存型DNS 并不需要在公網(wǎng)上進(jìn)行注冊,只對用戶查詢過的域名解析記錄進(jìn)行緩存,當(dāng)用戶首次進(jìn)行某域名的查詢時(shí),緩存服務(wù)器將向其他DNS 服務(wù)器進(jìn)行域名查詢并將查詢結(jié)果保存在緩存中。緩存服務(wù)器大大提高了常用域名的查詢速度,因此特別適合于在局域網(wǎng)內(nèi)部使用,其主要目的是提高域名解析的速度和節(jié)約對互聯(lián)網(wǎng)訪問的出口帶寬。
實(shí)驗(yàn)步驟:
一、 安裝域名服務(wù)(BIND 服務(wù)器軟件包)
BIND 軟件包是目前Linux 下使用最廣泛的DNS 服務(wù)器安裝包,它可以運(yùn)行到大多數(shù)UNIX 服務(wù)器中,也包括Linux 系統(tǒng)。RHEL4默
,認(rèn)沒有安裝BIND 服務(wù)器軟件包,而只安裝了名為bind-libs 和bind-utils 的兩個(gè)域名解析相關(guān)的軟件包,bind-libs 軟件中提供了實(shí)現(xiàn)域名解析功能必備的庫文件,bing-utils 中提供了對DNS 服務(wù)器的測試工具程序。
RHEL4系統(tǒng)中提供了RPM 格式的BIND 服務(wù)器軟件包,位于第4章光盤中,安裝文件的名稱是bind-9.2.4-2.i386.rpm 。由于沒有默認(rèn)進(jìn)行安裝,需要管理員使用rpm 命令進(jìn)行手動(dòng)安裝。
BIND 服務(wù)器的服務(wù)程序(腳本)名稱是named ,該服務(wù)程序在BIN D 服務(wù)器安裝后默認(rèn)不自動(dòng)啟動(dòng),需要使用chkconfig 命令進(jìn)行手動(dòng)設(shè)置在運(yùn)行級別3和5的啟動(dòng)狀態(tài)。
,BIND 服務(wù)器的主配置文件是named.conf ,保存在“/etc”目錄中,該文件是安裝bind 軟件包時(shí)生成的,而不是包括在該軟件包中的。
BIND 服務(wù)器中的域名區(qū)域文件需要保存在工作目錄“/var/named/”中,bind 軟件包安裝后,該目錄包括兩個(gè)空的子目錄,管理員需要在該目錄中保存DNS 服務(wù)器的區(qū)域文件。目錄data 中保存所有主區(qū)域文件的數(shù)據(jù)庫,slaves 中保存所有從主DNS 復(fù)制過來的區(qū)域文件,而且默認(rèn)為只讀。
二、 安裝caching-nameserver 軟件包
,RHEL4系統(tǒng)為配置緩存域名服務(wù)器專門提供了名為caching-name server 的軟件包,該軟件包保存在第一張安裝光盤中,系統(tǒng)默認(rèn)沒有安裝,需要使用rpm 命令進(jìn)行手動(dòng)安裝。
安裝完成之后,caching-nameserver 將對BIND 服務(wù)器的配置文件named.conf 的內(nèi)容進(jìn)行更改,原有文件中的內(nèi)容被保存在文件“/etc/named.conf.rpmorig”中。
三、 分析配置文件named.conf
,1、named.conf 中的全局設(shè)置
directory 用于設(shè)置BIND 服務(wù)器的工作目錄,即域名區(qū)域文件保存的目錄,設(shè)置的默認(rèn)值為“/var/named”。
dump-file 用于設(shè)置域名緩存文件的保存位置和文件名。
2、根區(qū)域設(shè)置及根區(qū)域文件
根區(qū)域是互聯(lián)網(wǎng)中所有域名的開始,使用句號(. )表示,緩存服務(wù)器只有能夠訪問DNS 根服務(wù)器才能提供正常的域名解析服務(wù)。配置信息如下:
type 設(shè)置為hint 表示該區(qū)域的類型是根區(qū)域。
file 用于設(shè)置區(qū)域文件,根區(qū)域文件的名稱是name.ca ,該文件保存在BIND 的工作目錄中,即“/var/named”目錄中。
name.ca 文件中包括了全世界范圍內(nèi)互聯(lián)網(wǎng)使用的所有DNS 根服務(wù)器的地址解析信息,是由互聯(lián)網(wǎng)管理機(jī)構(gòu)統(tǒng)一發(fā)布的,因此不需要用戶更改其中的內(nèi)容。
所有配置的區(qū)域文件都保存在“/var/named/”中
name.ca 文件去除注釋行后的內(nèi)容和形式如下所示:
顯示的全國13臺根DNS 服務(wù)器的IP 地址以及對應(yīng)的域名。
3、localhos 正向解析
Localhost 區(qū)域的作用是對主機(jī)名稱localhost 和回環(huán)地址127.0.0. 1之間進(jìn)行解析,代表本機(jī),可作本機(jī)的網(wǎng)卡測試用。使用的參數(shù)含義如下:
type master 表示該區(qū)域的類型為主服務(wù)器。
file 設(shè)置localhost 域的區(qū)域文件名為localhost.zone
localhost.zone 區(qū)域文件為localhost.zone ,可以查看到一條A 記錄對應(yīng)127.0.0.1。
4、localhos 的反向解析文件
在DNS 區(qū)域中,每個(gè)區(qū)域的正向解析必然有對應(yīng)的反向解析區(qū)域,反向解析區(qū)域的作用是將IP 地址轉(zhuǎn)換為對應(yīng)的域名。
內(nèi)容如下:
Localhost 的反向解析區(qū)域的名稱是0.0.127.in-addr.arpa ,名稱后綴為“.in-addr.arpa”的區(qū)域都是反向解析區(qū)域,名稱中0.0.127是I P 地址127.0.0的倒置,這樣的反向解析區(qū)域名稱是named.conf 配置文件中的約定。
0.0.127.in-addr.arpa 區(qū)域的類型是master ,即主服務(wù)器。區(qū)域文件的名稱是named.local ,該區(qū)域文件具有如下內(nèi)容:
在named.local 區(qū)域文件中使用下面的記錄設(shè)置了IP 地址127.0.0. 1對應(yīng)的主機(jī)域名為localhost 。
四、 緩存域名服務(wù)器的啟動(dòng)和測試
緩存域名服務(wù)器在安裝caching-nameserver 軟件包不需要任何其它的配置就可以啟動(dòng)運(yùn)行,只要這臺DNS 服務(wù)器能夠訪問公網(wǎng)就可以了,使用的是那十三臺根服務(wù)器,通過迭代的方式進(jìn)行域名查詢。
啟動(dòng)named 服務(wù)器。
測試緩存域名服務(wù)器,測試localhost 的正向解析和127.0.0.1的反向解析。如果能夠上公網(wǎng)也可以測試網(wǎng)絡(luò)上某一域名的正向解析和反向解析。
,