dns_server安裝
DNS Server的安裝與設(shè)定壹、DNS 概念:DNS 的結(jié)構(gòu)DNS 是一個(gè)分層級(jí)的分散式名稱對(duì)應(yīng)系統(tǒng)﹐有點(diǎn)像電腦的目錄樹結(jié)構(gòu)﹕在最頂端的是一個(gè)“root ”﹐然後其下分為好幾個(gè)基本類別名稱﹐如﹕c
DNS Server的安裝與設(shè)定
壹、DNS 概念:
DNS 的結(jié)構(gòu)
DNS 是一個(gè)分層級(jí)的分散式名稱對(duì)應(yīng)系統(tǒng)﹐有點(diǎn)像電腦的目錄樹結(jié)構(gòu)﹕在最頂端的是一個(gè)“root ”﹐然後其下分為好幾個(gè)基本類別名稱﹐如﹕com ﹑org ﹑edu 等﹔再下面是組織名稱﹐如﹕sony ﹑toshiba ﹑intel 等﹔繼而是主機(jī)名稱﹐如﹕www ﹑mail ﹑ftp 等。因?yàn)楫?dāng)初internet 是從美國(guó)發(fā)起的﹐所以當(dāng)時(shí)並沒有國(guó)域名稱﹐但隨著後來internet 的蓬勃發(fā)展﹐DNS 也加進(jìn)了諸如tw ﹑hk ﹑au 等國(guó)域名稱。所以一個(gè)完整的dns 名稱就好像是這樣的﹕www.xyz.com.tw ﹐而整個(gè)名稱對(duì)應(yīng)的就是一個(gè)IP 地址了。
在開始的時(shí)候﹐root 下面只有六個(gè)組織類別﹕
edu 教育﹑學(xué)術(shù)單位
org 組織﹑機(jī)構(gòu)
net 網(wǎng)路﹑通訊單位
com 公司﹑企業(yè)
gov 政府機(jī)關(guān)
mil 軍事單位
不過﹐自從組織類別名稱開放以後﹐各種各樣五花八門的名稱也相繼涌現(xiàn)出來了﹐但無論如何﹐取名的規(guī)則最好儘量適合網(wǎng)站性質(zhì)。除了原來的類別資料由美國(guó)本土的NIC(Network Information Center)管理之外﹐其它在國(guó)域以下的類別分別由該國(guó)的NIC 管理。這樣的結(jié)構(gòu)看起來就像這樣
DNS 的運(yùn)作
在我們?cè)O(shè)定IP 網(wǎng)路環(huán)境的時(shí)候﹐通常都要告訴每臺(tái)主機(jī)關(guān)於DNS 伺服器的地址﹐下面讓我們看看DNS 是怎樣運(yùn)作的﹕
1. 當(dāng)被詢問到有關(guān)本域名之內(nèi)的主機(jī)名稱的時(shí)候﹐DNS 伺服器會(huì)直接做出回答﹔
2. 如果所查詢的主機(jī)名稱屬於其它域名的話﹐會(huì)檢查記憶體﹐看看有沒有相關(guān)資料﹔
3. 如果沒有發(fā)現(xiàn)﹐則會(huì)轉(zhuǎn)向root 伺服器查詢﹔
4. 然後root 伺服器會(huì)將該域名之授權(quán)(authoritative)伺服器(可能會(huì)超過一臺(tái)) 的地址告知﹔
5. 本地伺服器然後會(huì)向其中的一臺(tái)伺服器查詢﹐並將這些伺服器名單存到記憶體中﹐以備將來之需(省卻再向root 查詢的步驟) ﹔
,6. 遠(yuǎn)方伺服器回應(yīng)查詢﹔
7. 將查詢結(jié)果回應(yīng)給客戶﹐並同時(shí)將結(jié)果儲(chǔ)存一個(gè)備份在自己的快取記憶裡面﹔
8. 如果在存放時(shí)間尚未過時(shí)之前再接到相同的查詢﹐則以存放於快取記憶裡面的資料來做回應(yīng)。
從這個(gè)過程我們可以看出﹐沒有任何一臺(tái)DNS 主機(jī)會(huì)包含所有域名的DNS 資料﹐資料都是分散在全部的DNS 伺服器中﹐而NIC 只需知道各DNS 伺服器地址就可以了。
分擔(dān)DNS 工作
Primary(master) DNS伺服器是架設(shè)在某一個(gè)網(wǎng)域下被主要授權(quán)並控制所有名稱記錄的主控制伺服器﹐管轄著所有該網(wǎng)域的記錄資料﹐這些記錄資料只有primary(master)可以修改。 但如果在一個(gè)比較大型的網(wǎng)路中﹐DNS 伺服器就會(huì)變得很繁忙了﹐所以您可以設(shè)定多個(gè)DNS 來分擔(dān)master 的工作﹐但您或許不願(yuàn)意到每一個(gè)DNS 伺服器去更新資料吧﹖而且就算您願(yuàn)意這樣做﹐也容易出現(xiàn)錯(cuò)誤或資料不同步的情形。這樣您可以設(shè)定其它的伺服器為secondary (slave) DNS來複製master 上面的記錄資料﹐這樣﹐其它的電腦可以被指定到不同的DNS 做查詢﹐既可以分擔(dān)master 的工作﹐而且資料也可以自動(dòng)進(jìn)行同步工作。您可以設(shè)定DNS 資料同步的時(shí)間間隔﹐在dns 檔案中的Refresh 設(shè)定就是了。同時(shí)您還會(huì)看到Serial ﹐當(dāng)slave 的上面的serial 數(shù)字少於它﹐資料就會(huì)被複製﹐否則會(huì)被忽略。
驗(yàn)證DNS 工作
當(dāng)您建立好一個(gè)DNS 伺服器之後﹐除了可以直接使用命令 ping (這個(gè)會(huì)在後面章節(jié)說明) 直接ping 一下上面的記錄之外﹐最好還是使用“nslookup ”這個(gè)命令進(jìn)行檢測(cè)或除錯(cuò)﹐(Windows9x系統(tǒng)並不包含此命令) 。
貳、DNS Server的相關(guān)套件及檔案:
在 Linux 上面﹐執(zhí)行 DNS 程式是叫BIND ﹐但我們一般稱它的服務(wù)程式為﹕named 。 您可到http://www.isc.org/products/BIND/尋找最新版BIND Version 9.1.3,目前在
RedHat 7.2套件上的相關(guān)檔案:
bind-9.1.3-14.i386.rpm
bind-devel-9.1.3-14.i386.rpm
bind-utils-9.1.3-14.i386.rpm
bindconf-1.6.1-1.noarch.rpm
caching-nameserver-7.2-1.noarch.rpm
您可由Redhat 7.2安裝光碟或到ftp://ftp.kh.edu.tw/pub/Linux/Redhat/en_7.2/RedHat/RPMS/中最得最新檔案。
RedHat 7.1套件上的相關(guān)檔案:
bind-9.1.0-10.i386.rpm
bind-devel-9.1.0-10.i386.rpm
bind-utils-9.1.0-10.i386.rpm
bindconf-1.4-1.noarch.rpm
caching-nameserver-7.1-3.noarch.rpm
您可由Redhat 7.1安裝光碟或到ftp://ftp.kh.edu.tw/pub/Linux/Redhat/en_7.1/RedHat/RPMS/中最得最新檔案。
bind 相關(guān)的設(shè)定檔:
/etc/named.conf…………………... 主設(shè)定檔
/var/named/named.ca……………... root zone資料表
/var/named/localhost.zone………....localhost 正解資料表
,/var/named/named.local……….. …..localhost 反解資料表
/var/named/named.[domain]…... …..domain 正解資料表
/var/named/named.[Network No.]….domain 反解資料表
bind 常用命令:
/etc/rc.d/init.d/named {start|stop|status|restart|condrestart|reload|probe}
/usr/sbin/named-checkconf
/usr/sbin/named-checkzone
/usr/sbin/rndc
/usr/bin/dig
/usr/bin/host
/usr/bin/nslookup
/usr/bin/nsupdate
參、DNS Server的安裝與設(shè)定
有關(guān)bind9.x 系列之設(shè)定手冊(cè)在http://www.nominum.com/resources/documentation/Bv9ARM.pdf 可取得英文之電子文件檔案,可提供您進(jìn)一步的詳細(xì)資料。
1. 檢查bind 是否安裝至系統(tǒng)中:
rpm -qa | grep bind
2. 安裝bind 相關(guān)套件:
rpm -ivh bind-9.1.0-10.i386.rpm
rpm -ivh bind-utils-9.1.0-10.i386.rpm
rpm -ivh caching-nameserver-7.1-3.noarch.rpm
3. 升級(jí)bind 相關(guān)套件:
rpm -Uvh bind-9.1.0-10.i386.rpm
rpm -Uvh bind-utils-9.1.0-10.i386.rpm
rpm -Uvh caching-nameserver-7.1-3.noarch.rpm
4.
5. 6. 7.
8.
,9.
(1) TXT :只是一些說明文字﹐可以用來說明主機(jī)/網(wǎng)路環(huán)境設(shè)定。
(2) NS :名稱伺服器﹐也就是該zone 指定的DNS 伺服器名稱。
(3) MX :郵件伺服器﹐負(fù)責(zé)經(jīng)由DNS 查詢進(jìn)行郵件傳遞的郵件伺服器。這樣的好處是﹕
如果您要更換郵件伺服器的話﹐只需修改DNS 記錄就可以了﹐而對(duì)方的郵件伺服器則無需理會(huì)您要使用的究竟是哪一臺(tái)電腦來負(fù)責(zé)郵件交換。同時(shí)﹐您也可以指定多臺(tái)郵件伺服器來分擔(dān)郵件交換工作﹐在MX 後面的號(hào)數(shù)用來指定伺服器的使用順序﹐數(shù)字越低越優(yōu)先。
(4) A :用來對(duì)應(yīng)主機(jī)名稱和其IP 地址﹐這個(gè)記錄最常用﹐而且也是最重要的記錄之一
(5) HINFO :和TXT 差不多﹐是回答“
Host Information”查詢用的。
(6) CNAME :是一個(gè)“別名”記錄﹐可以給A 記錄使用另外一個(gè)(或多個(gè)) 名稱讓外面查
詢。CNAME 可以對(duì)應(yīng)一個(gè)A 記錄﹐但不鼓勵(lì)對(duì)應(yīng)另一個(gè)CNAME 記錄。
(7) PTR :它是“Pointer ”的意思。 PTR 只會(huì)用於反查詢記錄當(dāng)中﹐它是將 IP 和 主
機(jī)名稱對(duì)應(yīng)起來(剛好和 A 記錄相反) 。
(8) AAAA :和A 記錄一樣﹐只不過對(duì)應(yīng)的是IP v6 格式
肆、測(cè)詴DNS 系統(tǒng)
1. 啟動(dòng)DNS Server:
/etc/rc.d/init.d/named start
2. 查看系統(tǒng)之log 檔:
,3. 設(shè)定/etc/resolv.conf檔,增加DNS Server的描述:
nameserver 163.18.???.1
4. 利用dig 命令:
dig [@server] domain [
[-
a T_A network address
any T_ANY all/any information about specified domain
mx T_MX mail exchanger for the domain
ns T_NS name servers
soa T_SOA zone of authority record
hinfo T_HINFO host information
axfr T_AXFR zone transfer (must ask an authoritative server)
5.
參考資料:
1. 高健智、賴阿福(民90)。隨裝即用Linux7中文版。知城數(shù)位。
2. http://www.study-area.net/linux/servers/linux_dns.htm。
3. http://www.nominum.com/resources/documentation/Bv9ARM.pdf。