Red Hat Linux上使用BIND建立DNS服務(wù)器
發(fā)布時(shí)間:2009-06-17 21:02:42 作者:佚名
我要評論
盡管Linux在桌面計(jì)算的世界中還沒有取得引人注目的進(jìn)展,但作為網(wǎng)絡(luò)服務(wù)器它已經(jīng)小有名氣了。由于其出色的可靠性,我們可以放心地在Linux上運(yùn)行當(dāng)今Internet時(shí)代所必需的各種重要服務(wù)程序。由此,Linux最普遍的一些用途包括用作郵件服務(wù)器、Web服務(wù)器以及DNS服務(wù)器。
盡管Linux在桌面計(jì)算的世界中還沒有取得引人注目的進(jìn)展,但作為網(wǎng)絡(luò)服務(wù)器它已經(jīng)小有名氣了。由于其出色的可靠性,我們可以放心地在Linux上運(yùn)行當(dāng)今Internet時(shí)代所必需的各種重要服務(wù)程序。由此,Linux最普遍的一些用途包括用作郵件服務(wù)器、Web服務(wù)器以及DNS服務(wù)器。
下面我們將研究怎樣在Red Hat Linux上使用BIND建立一個(gè)DNS服務(wù)器。BIND(Berkeley Internet Name Domain)是一個(gè)在UNIX/Linux系統(tǒng)上實(shí)現(xiàn)的域名解析服務(wù)軟件包。我們將學(xué)習(xí)在Linux上建立和運(yùn)行一個(gè)DNS服務(wù)器所需的安裝、初始配置以及系統(tǒng)設(shè)置等步驟。
在本文中我們用Red Hat作為示例,所以你也許希望使用BIND的RPM版本,可以通過搜索www.rpmfind.net找到它,因?yàn)槭褂肦PM形式的發(fā)行包是安裝BIND最簡便的方法。下載了BIND的RPM之后,比如bind-9.1.0-10.i386.rpm,需要以超級(jí)用戶的身份執(zhí)行rpm -ivh bind-9.1.0-10.i386.rpm命令。在RPM安裝BIND時(shí)要注意檢查任何能夠?qū)е掳惭b失敗的缺失的依賴關(guān)系。
如果你更愿意從源碼包安裝的話,在下載如 bind-9.1.3.tar.gz這樣的文件之后需要以超級(jí)用戶身份運(yùn)行tar xvfz bind-9.1.3.tar.gz命令對它進(jìn)行解壓。就本例而言會(huì)生成一個(gè)名為bind-9.1.3的目錄,它包含了進(jìn)行安裝所必需的所有文件。下一步,進(jìn)入這個(gè)新創(chuàng)建的目錄然后執(zhí)行./configure命令,在腳本程序完成所有配置工作后,運(yùn)行make,接著運(yùn)行make install完成安裝過程?,F(xiàn)在在你的系統(tǒng)中應(yīng)該已經(jīng)安裝好了基本配置的BIND,接下來要根據(jù)需要對它進(jìn)行調(diào)整。
配置BIND
當(dāng)系統(tǒng)中安裝好BIND之后,你就可以把它配置成多種方式。最常用的兩種之一是使用ISP類型的設(shè)置,DNS服務(wù)器接受并解析來自任何人的請求 (或者一組預(yù)先定義的用戶);另一種是Web主機(jī)方式,服務(wù)器只解析對服務(wù)域名的請求。當(dāng)服務(wù)器的用途改變時(shí),你也可以隨時(shí)改變配置的類型。
DNS服務(wù)器既可以是主控服務(wù)器也可以是輔助服務(wù)器。主控服務(wù)器也稱為主服務(wù)器,是判定域名的最終來源。主控服務(wù)器同時(shí)也是傳送到輔助服務(wù)器的區(qū)傳送(zone transfer)的源頭。輔助服務(wù)器接收所有來自主控服務(wù)器的區(qū)信息。一個(gè)常見的錯(cuò)誤是試圖改變二級(jí)服務(wù)器上的區(qū)數(shù)據(jù)庫文件而沒有改變主控服務(wù)器上的區(qū)數(shù)據(jù)庫文件(zone file)。為什么要兩個(gè)服務(wù)器呢?在任何配置中使用冗余都是一個(gè)好主意,這是BIND和DNS的一個(gè)原生部分。幸運(yùn)的是,在機(jī)房中增加第二臺(tái)Linux 機(jī)器作為輔助DNS服務(wù)器一般來說不會(huì)影響你的預(yù)算。
要記住當(dāng)有兩種類型的服務(wù)器時(shí),主控服務(wù)器也可以同時(shí)擔(dān)當(dāng)其他域的輔助服務(wù)器。在大多數(shù)ISP環(huán)境當(dāng)中都可以看到這種情形,客戶擁有自己的主控 DNS服務(wù)器,同時(shí)又出于備份的目的把ISP當(dāng)作二級(jí)服務(wù)器。這種類型的配置以及BIND中幾乎所有的其他配置項(xiàng)都是通過named.conf文件完成的。這個(gè)文件以純文本的形式存放各服務(wù)器信息和區(qū)信息。如表A所示。
named.conf 文件示例
options {
notify-source 10.0.0.2;
pid-file "/var/run/named.pid";
};
zone "." {
type master;
file "root.db";
};
zone "example.com" {
type master;
file "/var/named/sample.com.zone";
};
DNS服務(wù)器有多種可用的選項(xiàng),如果你需要某種特殊的安裝方式,我建議你通讀一遍附帶的文檔。上面的例子中notify-source指明服務(wù)器把區(qū)變動(dòng)通知(NOTIFY)消息發(fā)送到什么地方,當(dāng)主控服務(wù)器檢測到區(qū)數(shù)據(jù)庫文件發(fā)生變動(dòng)時(shí)就會(huì)向輔助服務(wù)器發(fā)出這樣的消息。pid-file選項(xiàng)只是告訴守護(hù)進(jìn)程(daemon)服務(wù)器寫入ID信息的路徑,通常是/var/run/named.pid,但如果你重新設(shè)置了目錄的布局的話也可以根據(jù)需要對其進(jìn)行更改。
上面的例子中第一個(gè)區(qū)登記項(xiàng)用來通知BIND在何處定位根服務(wù)器的信息。服務(wù)器發(fā)送和接收的不僅是你自己的域信息同時(shí)也包括Internet上所有的域信息。并不是每個(gè)服務(wù)器上都有每個(gè)域名的登記項(xiàng),但每個(gè)服務(wù)器都知道怎樣獲取信息。當(dāng)然,由于列表會(huì)定期更新,所以也應(yīng)當(dāng)定期作記錄。
下面我們將研究怎樣在Red Hat Linux上使用BIND建立一個(gè)DNS服務(wù)器。BIND(Berkeley Internet Name Domain)是一個(gè)在UNIX/Linux系統(tǒng)上實(shí)現(xiàn)的域名解析服務(wù)軟件包。我們將學(xué)習(xí)在Linux上建立和運(yùn)行一個(gè)DNS服務(wù)器所需的安裝、初始配置以及系統(tǒng)設(shè)置等步驟。
在本文中我們用Red Hat作為示例,所以你也許希望使用BIND的RPM版本,可以通過搜索www.rpmfind.net找到它,因?yàn)槭褂肦PM形式的發(fā)行包是安裝BIND最簡便的方法。下載了BIND的RPM之后,比如bind-9.1.0-10.i386.rpm,需要以超級(jí)用戶的身份執(zhí)行rpm -ivh bind-9.1.0-10.i386.rpm命令。在RPM安裝BIND時(shí)要注意檢查任何能夠?qū)е掳惭b失敗的缺失的依賴關(guān)系。
如果你更愿意從源碼包安裝的話,在下載如 bind-9.1.3.tar.gz這樣的文件之后需要以超級(jí)用戶身份運(yùn)行tar xvfz bind-9.1.3.tar.gz命令對它進(jìn)行解壓。就本例而言會(huì)生成一個(gè)名為bind-9.1.3的目錄,它包含了進(jìn)行安裝所必需的所有文件。下一步,進(jìn)入這個(gè)新創(chuàng)建的目錄然后執(zhí)行./configure命令,在腳本程序完成所有配置工作后,運(yùn)行make,接著運(yùn)行make install完成安裝過程?,F(xiàn)在在你的系統(tǒng)中應(yīng)該已經(jīng)安裝好了基本配置的BIND,接下來要根據(jù)需要對它進(jìn)行調(diào)整。
配置BIND
當(dāng)系統(tǒng)中安裝好BIND之后,你就可以把它配置成多種方式。最常用的兩種之一是使用ISP類型的設(shè)置,DNS服務(wù)器接受并解析來自任何人的請求 (或者一組預(yù)先定義的用戶);另一種是Web主機(jī)方式,服務(wù)器只解析對服務(wù)域名的請求。當(dāng)服務(wù)器的用途改變時(shí),你也可以隨時(shí)改變配置的類型。
DNS服務(wù)器既可以是主控服務(wù)器也可以是輔助服務(wù)器。主控服務(wù)器也稱為主服務(wù)器,是判定域名的最終來源。主控服務(wù)器同時(shí)也是傳送到輔助服務(wù)器的區(qū)傳送(zone transfer)的源頭。輔助服務(wù)器接收所有來自主控服務(wù)器的區(qū)信息。一個(gè)常見的錯(cuò)誤是試圖改變二級(jí)服務(wù)器上的區(qū)數(shù)據(jù)庫文件而沒有改變主控服務(wù)器上的區(qū)數(shù)據(jù)庫文件(zone file)。為什么要兩個(gè)服務(wù)器呢?在任何配置中使用冗余都是一個(gè)好主意,這是BIND和DNS的一個(gè)原生部分。幸運(yùn)的是,在機(jī)房中增加第二臺(tái)Linux 機(jī)器作為輔助DNS服務(wù)器一般來說不會(huì)影響你的預(yù)算。
要記住當(dāng)有兩種類型的服務(wù)器時(shí),主控服務(wù)器也可以同時(shí)擔(dān)當(dāng)其他域的輔助服務(wù)器。在大多數(shù)ISP環(huán)境當(dāng)中都可以看到這種情形,客戶擁有自己的主控 DNS服務(wù)器,同時(shí)又出于備份的目的把ISP當(dāng)作二級(jí)服務(wù)器。這種類型的配置以及BIND中幾乎所有的其他配置項(xiàng)都是通過named.conf文件完成的。這個(gè)文件以純文本的形式存放各服務(wù)器信息和區(qū)信息。如表A所示。
named.conf 文件示例
options {
notify-source 10.0.0.2;
pid-file "/var/run/named.pid";
};
zone "." {
type master;
file "root.db";
};
zone "example.com" {
type master;
file "/var/named/sample.com.zone";
};
DNS服務(wù)器有多種可用的選項(xiàng),如果你需要某種特殊的安裝方式,我建議你通讀一遍附帶的文檔。上面的例子中notify-source指明服務(wù)器把區(qū)變動(dòng)通知(NOTIFY)消息發(fā)送到什么地方,當(dāng)主控服務(wù)器檢測到區(qū)數(shù)據(jù)庫文件發(fā)生變動(dòng)時(shí)就會(huì)向輔助服務(wù)器發(fā)出這樣的消息。pid-file選項(xiàng)只是告訴守護(hù)進(jìn)程(daemon)服務(wù)器寫入ID信息的路徑,通常是/var/run/named.pid,但如果你重新設(shè)置了目錄的布局的話也可以根據(jù)需要對其進(jìn)行更改。
上面的例子中第一個(gè)區(qū)登記項(xiàng)用來通知BIND在何處定位根服務(wù)器的信息。服務(wù)器發(fā)送和接收的不僅是你自己的域信息同時(shí)也包括Internet上所有的域信息。并不是每個(gè)服務(wù)器上都有每個(gè)域名的登記項(xiàng),但每個(gè)服務(wù)器都知道怎樣獲取信息。當(dāng)然,由于列表會(huì)定期更新,所以也應(yīng)當(dāng)定期作記錄。
相關(guān)文章

Fedora Linux 42 穩(wěn)定版發(fā)布: 帶來大量新功能和軟件更新
Fedora 42昨日發(fā)布,這是 Red Hat 贊助開發(fā)的杰出前沿 Linux 發(fā)行版的最新版,包含大量新功能和軟件更新,使其成為 2025 年上半年發(fā)布的一款出色的 Linux 操作系統(tǒng)之一,內(nèi)2025-04-16
如何在Linux查看硬盤信息? 查看Linux硬盤大小類型和硬件信息的5種方法
使用Linux系統(tǒng)的過程中,查看和了解硬盤信息是非常重要的工作,尤其是對于系統(tǒng)管理員而言,那么在Linux系統(tǒng)中如何查看硬盤信息?以下是具體內(nèi)容介紹2025-03-12
如何在 Linux 中查看 CPU 詳細(xì)信息? 3招輕松查看CPU型號(hào)、核心數(shù)和溫度
在日常運(yùn)維工作中,獲取 CPU 信息是系統(tǒng)運(yùn)維管理員常見的工作內(nèi)容,無論是為了性能調(diào)優(yōu)、硬件升級(jí)還是僅僅滿足好奇心2025-03-11
什么是 Arch Linux? 獨(dú)樹一幟的Arch Linux發(fā)行版分析
Arch Linux是為簡化,優(yōu)化,現(xiàn)代化,實(shí)用主義,用戶中心和多功能性而創(chuàng)建Linux發(fā)行版,究竟是什么讓 Arch 與眾不同?下面我們就來簡要解讀2025-02-19
如何在Linux環(huán)境下制作 Win11裝機(jī)U盤?
一直用的linux辦公,想要將筆記本電腦從 Linux 系統(tǒng)切換回 Windows 11,我們可以制作一個(gè)win11裝機(jī)u盤,詳細(xì)如下2025-02-17
Rsnapshot怎么用? 基于Rsync的強(qiáng)大Linux備份工具使用指南
Rsnapshot 不僅可以備份本地文件,還能通過 SSH 備份遠(yuǎn)程文件,接下來詳細(xì)介紹如何安裝、配置和使用 Rsnapshot,包括創(chuàng)建每小時(shí)、每天、每周和每月的本地備份,以及如何進(jìn)2025-02-06
Linux Kernel 6.13發(fā)布:附更新內(nèi)容及新特性解讀
Linux 內(nèi)核 6.13 正式發(fā)布,新版本引入了惰性搶占支持,簡化內(nèi)核搶占邏輯,通過減少與調(diào)度器相關(guān)的調(diào)用次數(shù),讓內(nèi)核在運(yùn)行時(shí)表現(xiàn)更優(yōu),從而提高效率2025-01-23
五大特性引領(lǐng)創(chuàng)新! 深度操作系統(tǒng) deepin 25 Preview預(yù)覽版發(fā)布
今日,深度操作系統(tǒng)正式推出deepin 25 Preview版本,該版本集成了五大核心特性:磐石系統(tǒng)、全新DDE、Treeland窗口合成器、AI For OS以及Distrobox子系統(tǒng)2025-01-18
Linux Mint Xia 22.1重磅發(fā)布: 重要更新一覽
Beta 版 Linux Mint“Xia” 22.1 發(fā)布,新版本基于 Ubuntu 24.04,內(nèi)核版本為 Linux 6.8,這次更新帶來了諸多優(yōu)化和改進(jìn),進(jìn)一步鞏固了 Mint 在 Linux 桌面操作系統(tǒng)領(lǐng)域的2025-01-16
LinuxMint怎么安裝? Linux Mint22下載安裝圖文教程
Linux Mint22發(fā)布以后,有很多新功能,很多朋友想要下載并安裝,該怎么操作呢?下面我們就來看看詳細(xì)安裝指南2025-01-16








