基于Linux下的DNS服務(wù)器的構(gòu)建與配置
1頁(yè)20頁(yè)基于Linux 下的DNS 服務(wù)器的構(gòu)建與配置學(xué)生姓名:XX 指導(dǎo)老師:XX摘 要 隨著計(jì)算機(jī)網(wǎng)絡(luò)的發(fā)展, 擔(dān)負(fù)地址解析任務(wù)的 DNS 服務(wù)器的作用日顯突出。同時(shí) LINUX 操作系統(tǒng)

1頁(yè)20頁(yè)
基于Linux 下的DNS 服務(wù)器的構(gòu)建與配置
學(xué)生姓名:XX 指導(dǎo)老師:XX
摘 要 隨著計(jì)算機(jī)網(wǎng)絡(luò)的發(fā)展, 擔(dān)負(fù)地址解析任務(wù)的 DNS 服務(wù)器的作用日顯突出。同時(shí) LINUX 操作系統(tǒng)以其具備自主開(kāi)發(fā)和高效靈活的特點(diǎn)已成為全球增長(zhǎng)最快的操作系統(tǒng)之一,在 LINUX 操作平臺(tái)上搭建各類(lèi)網(wǎng)絡(luò)服務(wù)器,真正意義上實(shí)現(xiàn)多任務(wù)、多用戶(hù)服務(wù), 具備了穩(wěn)定性、安全性和高效性。本次設(shè)計(jì)分析了 DNS 工作原理以及域名系統(tǒng), 介紹了基于 LINUX 的 DNS 服務(wù)器的一般配置。
關(guān)鍵詞 計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng);域名解析;多任務(wù)
,
2頁(yè)20頁(yè)
The Structure and Configuration of DNS Server Based on Linux Operating System
Student name: XX Advisor :XX
Abstract With the development of computer network,the role of the DNS server,which shoulders the task of resolving address,is obvious important.The Linux operating system is regarded as one of the most popular operating systems for its flexible and self-develop characters.All kinds of network servers established on Linux operating system have realized multi-task and multi-user authentically.The design analyses the work principle of DNS server and domain name system,introduces the general configuration of DNS server based on Linux operating system.
Key words computer net system;resolving domain name;multi-task
,
3頁(yè)20頁(yè)
目 錄
1 引 言 . .................................................................................................... 4
1.1設(shè)計(jì)的意義..................................................................................... 4
1.2相關(guān)概念簡(jiǎn)介 ................................................................................ 4
2 DNS 的工作原理................................................................................. 7
2.1 DNS的解析原理 . .......................................................................... 7
2.2 DNS的解析過(guò)程 . .......................................................................... 8
3 Linux 下DNS 的構(gòu)建與配置 . ........................................................... 9
3.1 安裝DNS 服務(wù)器軟件 ................................................................ 9
3.2 實(shí)驗(yàn)環(huán)境的構(gòu)建 . ........................................................................ 11
3.3 配置dnsserver 服務(wù)器中的DNS 服務(wù) ................................... 11
3.4對(duì)域mydomain 進(jìn)行DNS 服務(wù)器的配置 .............................. 12
3.5 配置mydomain 服務(wù)器的反向區(qū)數(shù)據(jù).................................... 13
4 系統(tǒng)測(cè)試與結(jié)果分析 ......................................................................... 17
5 結(jié)束語(yǔ) . .................................................................................................. 19
6 參考文獻(xiàn)............................................................................................... 20
,
4頁(yè)20頁(yè)
1 引 言
1.1設(shè)計(jì)的意義
近年來(lái),隨著―傳輸控制協(xié)議/網(wǎng)際協(xié)議(TCP/IP)‖套件的廣泛使用,TCP/IP已經(jīng)成為網(wǎng)絡(luò)通信中事實(shí)上的標(biāo)準(zhǔn)。在TCP/IP網(wǎng)絡(luò)中,每一臺(tái)主機(jī)都既可以通過(guò)域名也可以通過(guò)唯一的IP 地址實(shí)現(xiàn)互聯(lián),這是因?yàn)橛蛎cIP 地址之間存在這一對(duì)一的映射關(guān)系。DNS (Domain Name System ,即域名系統(tǒng))服務(wù)可以提供域名和IP 地址之間的自動(dòng)轉(zhuǎn)換,用于將不易記憶的IP 地址翻譯成相對(duì)來(lái)說(shuō)易于記憶的域名。這種地址翻譯的過(guò)程成為域名解析,而提供域名解析服務(wù)的網(wǎng)絡(luò)主機(jī),通常被成為DNS 服務(wù)器[1]。本次設(shè)計(jì),主要是實(shí)現(xiàn)Linux 下DNS 服務(wù)器的構(gòu)建與配置。
1.2相關(guān)概念簡(jiǎn)介
1.DNS 系統(tǒng)簡(jiǎn)介
DNS (Domain Name System )即―域名系統(tǒng)‖[2]。在一個(gè)TCP/IP架構(gòu)的網(wǎng)絡(luò)(例如Internet )環(huán)境中,IP 地址用于標(biāo)識(shí)主機(jī)地址,DNS 的主要功能是易于記憶的Domain Name(域名)與人不容易記憶的IP 地址進(jìn)行轉(zhuǎn)換。網(wǎng)絡(luò)中執(zhí)行DNS 服務(wù)的主機(jī)稱(chēng)為DNS 服務(wù)器(域名服務(wù)器)。DNS 服務(wù)器除了將域名轉(zhuǎn)換為IP 地址外(―正向解析‖),還可以將IP 地址轉(zhuǎn)換成域名(―逆向解析‖)。
域名系統(tǒng)(DNS )是一種用于TCP/IP應(yīng)用程序的全球分布式數(shù)據(jù)庫(kù)。在Internet 上的單個(gè)站點(diǎn)不能擁有Internet 上所有的信息。每個(gè)站點(diǎn)(如某所大學(xué)中、某間公司)保留自己的信息數(shù)據(jù)庫(kù),并提供給Internet 上的客戶(hù)查詢(xún)。該數(shù)據(jù)庫(kù)的結(jié)構(gòu)可以用反轉(zhuǎn)樹(shù)狀圖來(lái)表示,如圖1.1所示。

根域
子域
子域
主機(jī)
,
5頁(yè)20頁(yè)
圖1.1 域名系統(tǒng)樹(shù)形結(jié)構(gòu)圖
一個(gè)域(Domain )一般是指整個(gè)域名空間的一個(gè)子樹(shù)。樹(shù)的最上層是根(root ),用―.‖表示,根下面是若干個(gè)子樹(shù),又稱(chēng)為域(Domain )。根域下面是頂級(jí)域名,主要有com 、edu 、gov 、org 、net 和mpa 等。表1-1描述了這些頂級(jí)域名的含義。
表1-1 頂級(jí)域名及其含義

域名的分配和管理由國(guó)際互聯(lián)網(wǎng)中心(InterNIC )負(fù)責(zé)。一般頂級(jí)域名分為兩類(lèi),一類(lèi)是表示組織性質(zhì),如com ,另一類(lèi)是地域性質(zhì),如cn 表示中國(guó)。在頂級(jí)域名下是二級(jí)域名,通常由InterNIC 授權(quán)給其他單位或組織管理,如中國(guó)的域名管理中心是CNNIC 。例如,在域名www.abc.com.cn 中,cn 是地域性的頂級(jí)域名,com 是組織性的頂級(jí)域名,abc 是二級(jí)域名。在二級(jí)域名還可以再設(shè)置三級(jí)域名,如www.abc.com.cn ,www 是一個(gè)三級(jí)域名。三級(jí)域名的管理一般由二級(jí)域名的所有者負(fù)責(zé),不再由NIC 負(fù)責(zé)。
2.hosts 文件
在Linux 系統(tǒng)中,往往在/etc目錄下存在一個(gè)提供DNS 解析的文件——hosts 文件。hosts 文件包括域名和IP 地址的對(duì)應(yīng)信息。當(dāng)一臺(tái)計(jì)算機(jī)需要通過(guò)域名來(lái)定位網(wǎng)絡(luò)上另一臺(tái)計(jì)算機(jī)時(shí),往往先查看本地hosts 文件。
一個(gè)典型的hosts 文件的格式如下:
127.0.0.1 loealhost localhost .localdomain
192.168.1.1 www www.abc.com.cn
192.168.1.2 ftp ftp.abc.com.cn
每一行為一個(gè)記錄,標(biāo)識(shí)一臺(tái)計(jì)算機(jī)。第一列指出IP 地址,如192.168.1.1;第二列開(kāi)始指明該IP 地址對(duì)應(yīng)的計(jì)算機(jī)名。一臺(tái)計(jì)算機(jī)可以設(shè)置多個(gè)名字,每個(gè)名字之間
,
6頁(yè)20頁(yè) 用空格分隔開(kāi)。例如,www 、www.abc.com.cn 都是IP 地址為192.168.1.1的計(jì)算機(jī)的名字
3.DNS 服務(wù)器的分類(lèi)
Internet 上主機(jī)的域名和地址解析主要是由DNS 域名服務(wù)器完成的。DNS 域名空間中存在以下幾種DNS 服務(wù)器。
①根服務(wù)器:用―.‖表示,位于整個(gè)域名空間的最上層,主要用來(lái)管理根域和頂級(jí)域名。目前,世界上一共有13臺(tái)計(jì)算機(jī)作為根服務(wù)器。
②緩存(cache-only )域名服務(wù)器:域名系統(tǒng)中的域名服務(wù)器把非它們授權(quán)管理的遠(yuǎn)程域名信息保存在自己的緩存中。遇到域名查詢(xún)時(shí),首先查找緩存中的記錄,如果找到該記錄,則把結(jié)果返回給客戶(hù)端;否則,按照DNS 的查找規(guī)則進(jìn)一步查找。緩存服務(wù)器只用來(lái)緩存DNS 域的信息,沒(méi)有本地的域名數(shù)據(jù)庫(kù),不管理任何域名信息。
③主域名(Primary servers)服務(wù)器:每個(gè)域必須有一個(gè)主域名服務(wù)器。該域的所有DNS 數(shù)據(jù)庫(kù)文件的修改都在這臺(tái)服務(wù)器上進(jìn)行。主域名服務(wù)器管理對(duì)其子域的授權(quán),并且對(duì)該域中的輔助域名服務(wù)器進(jìn)行周期性的更新和同步。
④輔助域名(secondary servers)服務(wù)器:每個(gè)域至少應(yīng)有一個(gè)輔助域名服務(wù)器。輔助域名服務(wù)器從相應(yīng)的主域名服務(wù)器獲得所有域名數(shù)據(jù)庫(kù)文件的副本,并對(duì)所服務(wù)的域提供和主域名服務(wù)器一樣的授權(quán)信息。
⑤轉(zhuǎn)發(fā)域名服務(wù)器:是主域名服務(wù)器和輔助域名服務(wù)器的一種變形,負(fù)責(zé)所有非本地域名的非本地查詢(xún)。如果在網(wǎng)絡(luò)中存在一臺(tái)轉(zhuǎn)發(fā)域名服務(wù)器,則所有對(duì)于非本地域名的查詢(xún)都將先轉(zhuǎn)發(fā)給它,再由轉(zhuǎn)發(fā)域名服務(wù)器進(jìn)行域名解析。
4. 解析器
,
7頁(yè)20頁(yè)
2 DNS 的工作原理
2.1 DNS的解析原理
1. 正向解析
當(dāng)DNS 客戶(hù)端向DNS 服務(wù)器查詢(xún)IP 地址時(shí),或DNS 服務(wù)器在向另外一臺(tái)DNS 服務(wù)器查詢(xún)IP 地址時(shí),有以下三種查詢(xún)方式:
①直接從緩沖存儲(chǔ)器解析:可以直接從DNS 客戶(hù)端或DNS 服務(wù)器的高速緩沖器中獲得查詢(xún)結(jié)果。
②遞歸查詢(xún):DNS 客戶(hù)端送出查詢(xún)要求后,如果本地DNS 服務(wù)器內(nèi)沒(méi)有需要的數(shù)據(jù),則DNS 服務(wù)器會(huì)代替客戶(hù)端向起他的DNS 服務(wù)器查詢(xún),一般由DNS 客戶(hù)端所提出的查詢(xún)要求是屬于遞歸查詢(xún)。
③循環(huán)查詢(xún):一般DNS 服務(wù)器與DNS 服務(wù)器之間的查詢(xún)屬于這種查詢(xún)方式,當(dāng)?shù)?臺(tái)DNS 服務(wù)器在向第2臺(tái)DNS 服務(wù)器提出的查詢(xún)要求后,如果第2臺(tái)DNS 服務(wù)器內(nèi)沒(méi)有所需要的數(shù)據(jù),則它會(huì)提供第3臺(tái)DNS 服務(wù)器的IP 地址給第1臺(tái)服務(wù)器,讓第1臺(tái)DNS 服務(wù)器向第3臺(tái)DNS 服務(wù)器查詢(xún)。具體解析過(guò)程,如圖2.1所示。

DNS2
管轄根的DNS服務(wù)器
DNS4
管轄ahxinhua.comDNS3管轄.com DNS務(wù)器
圖2.1 DNS解析過(guò)程
2. 反向解析
域名反向解析可以讓DNS 客戶(hù)端利用IP 地址查詢(xún)其主機(jī)名稱(chēng),服務(wù)器利用in-addr.arpa 反向指針[4],講一個(gè)IP 地址指點(diǎn)向域名。
,
8頁(yè)20頁(yè)
2.2 DNS的解析過(guò)程
以解析www.abc.com 域名為例。當(dāng)系統(tǒng)需要調(diào)用www.abc.com 主機(jī)的資料時(shí),發(fā)送一個(gè)查詢(xún)www.abc.com 域名的指令。
(1)系統(tǒng)中存在一個(gè)hosts 文件,可以用來(lái)解析域名。在系統(tǒng)中,可以定義查找域名的順序:先查找hosts 文件,還是先查找DNS 服務(wù)器。一般設(shè)置先查找hosts 文件,如果在hosts 文件中發(fā)現(xiàn)www.abc.com 記錄,則直接返回結(jié)果。
(2)如果hosts 文件中沒(méi)有發(fā)現(xiàn)該記錄,則把查詢(xún)指令轉(zhuǎn)發(fā)到系統(tǒng)中指定的域名服務(wù)器,進(jìn)行DNS 查詢(xún)。
(3)域名服務(wù)器在自己的緩存中查找相應(yīng)的域名記錄,如果存在該記錄,則返回結(jié)果;否則,把這個(gè)查詢(xún)指令轉(zhuǎn)發(fā)到根域名服務(wù)器。
(4)在根域名服務(wù)器的記錄中,根據(jù)遞歸查詢(xún)的規(guī)則,只能返回頂級(jí)域名com ,并且把能夠解析com 的域名服務(wù)器的地址告訴客戶(hù)機(jī)。
(5)客戶(hù)機(jī)根據(jù)返回的信息,繼續(xù)向com 域名服務(wù)器發(fā)送遞歸請(qǐng)求,收到請(qǐng)求的、能夠正確返回abc.com 域名信息的域名服務(wù)器,再把相關(guān)信息返回給客戶(hù)機(jī)。
(6)客戶(hù)機(jī)再次向abc.com 的域名服務(wù)器發(fā)送遞歸請(qǐng)求,收到請(qǐng)求的服務(wù)器再次進(jìn)行解析;該服務(wù)器已經(jīng)能夠把www.abc.com 域名完全解析到一個(gè)IP 地址,并把這個(gè)IP 地址返回。
,
9頁(yè)20頁(yè)
3 Linux 下DNS 的構(gòu)建與配置
在Linux 中下架設(shè)DNS 服務(wù)器使用的工具通常是Bind 程序Bind 是為BSD 操作系統(tǒng)[5]開(kāi)發(fā)的一套網(wǎng)絡(luò)域名服務(wù)系統(tǒng),是一款實(shí)現(xiàn)DNS 服務(wù)器的開(kāi)發(fā)源軟件。在此次設(shè)計(jì)平臺(tái)Linux 9系統(tǒng)中采用了Bind-9.2.1版本。
3.1 安裝DNS 服務(wù)器軟件
1. 查看Band 軟件包
在Red Hat Linux 9中,系統(tǒng)默認(rèn)安裝了Bind ,可以通過(guò)一下命令進(jìn)行查詢(xún): # rpm –q bind
bind-9.2.1-16
可以知道系統(tǒng)中已經(jīng)安裝好了Bind ,其版本號(hào)為9.2.1。如果需要查看更多的安裝信息,則使用如下命令:
# rpm –qi bind
2. 安裝DNS 服務(wù)器軟件
#rpm –ivh bind-9.2.1-16.i386.rpm
#rpm –ivh bind-utils-9.2.1-16.i386.rpm
#rpm –ivh caching-nameserver-9.2-7.noarch.rpm
相關(guān)文件:
/etc/named.conf dns 服務(wù)器核心配置文件
/etc/rc.d/init.d/named dns 服務(wù)器守護(hù)進(jìn)程所對(duì)應(yīng)的程序
/var/named/named.ca dns 服務(wù)器根區(qū)域文件
/var/named/localhosts.zone dns 服務(wù)器localhost 區(qū)域的正向文件
/var/named/named.local 127.0.0.0的反向解析文件
3.DNS 的啟動(dòng)、停止及測(cè)試
可以使用service 命令啟動(dòng)、關(guān)閉和重新啟動(dòng)DNS 守護(hù)進(jìn)程named 。
啟動(dòng)named 進(jìn)程,命令行為:
# service named start
named 已經(jīng)在運(yùn)行
關(guān)閉named 進(jìn)程,命令行為:
#service named stop
,
10頁(yè)20頁(yè) 停止named :
重新啟動(dòng)named 進(jìn)程,命令行為:
# service named restart
停止named :
named 已經(jīng)在運(yùn)行
4. 測(cè)試DNS 服務(wù)器
bind-utils
軟件包中自帶了dig 、host 和nslookup 等測(cè)試工具。如果能使用這幾個(gè)工具對(duì)地址進(jìn)行正確解析,則說(shuō)明DNS 服務(wù)器已經(jīng)正常工作。
①nslookup 命令
直接使用nslookup 命令可以進(jìn)入交互模式。輸入需要解釋的域名將顯示對(duì)應(yīng)的IP 地址,輸入IP 地址則可以顯示對(duì)應(yīng)的域名,如下所示:
# nslookup
> 192.168.120.100 //對(duì)192.168.120.100地址進(jìn)行解析 Server: 192.168.120.100 //顯示當(dāng)前DNS 服務(wù)器地址信息 Address: 192.168.120.100#53
……..
②host 命令
使用host 命令也可以對(duì)域名或IP 地址進(jìn)行解析。如果DNS 服務(wù)器工作正常,則將返回相應(yīng)的解析結(jié)果,命令行如下所示:
# host www.my.internal.zone /對(duì)此域名進(jìn)行解析/ www.my.internal.zone has address 192.168.255.3 //正向解析結(jié)果
# host 192.168.255.3
3.255.168.192.in-addr.arpa domain name pointer www.my.internal.zone. //反向解析結(jié)果
dig 命令
dig 命令不僅顯示解析結(jié)果,而且顯示與所查詢(xún)域名相關(guān)的DNS 服務(wù)器的配置信息,命令行如下所示:
# dig rhel.my.internal.zone
…..
③ping 命令