詳解Linux 6&7上搭建DNS服務器

整個hteret大家庭中連接了數以億計的服務器個人主機,其中大部分的網站,部件等服務器都使用了域名形式的地址,如www.google.com.mail 163.com 等。很顯然這種地址形式要比使月01231317202103 7A 的戶地址形式更加直觀而且更容易被用戶記住.

DNS系統在網絡中的

作用處是維護着一個地址數現連,其中記錄了各種主機城名與戶地址的技關係上內便光安戶租序現供正向的地址解析服務正向解析根據域名查IP 地址即將指定的域名解析爲相對應的P地址,域名的正向解

析是DNS服務器最基本的功能也是最常用的功能,反向解析根據IP 地址查域名,即將指定的P地址解析爲相對應的域名,域名的反向解析不是很常用,只在一些特殊場合纔會用到如可用於反垃圾郵件的驗證。

實際上,每一臺Di 服務器都只負責管理一個有股範圍一個或幾個域內的生機端名和IP地址的對應關係,這些特定的DNS城或P 地址段稱爲“20 區域,根據地址解橋的方向不同

DNS 區域相應地分爲正向區域(包含域名到P地址的解析記錄和反向區域包含P地址到域名

的解析記錄)。

根據所管理的區域地址數據的來源不同DNS 系統可以分爲不同的類型,在同一臺DNS 服務

器中,相對於不同的區域來說,也擁有不同的身份,常見的幾種類型如下。

緩存域名服務器: 只提供域名解析結果的緩存功能,目的在於提高查詢速度和效率,但

是沒有自己控制的區域地址數據。構建緩存域名服務器時必須設置根域或指定其他DNS

服務器作爲解析來源。

主域名服務器維護某一個特定DNS區域的地數據庫,對其中的]解析記錄具有自控

制權,是指定區域中唯一存在的權威服務器、官方服務器。構建主域名服務器時,需要自行建立所負責區域的地址數據文件,從域名服務器,與主域名服務器提供完全相同的DN 解析服務通常用於DNS服務器的熱備份。對客戶機來說。無論使用主域名服務器還是從域名服務器,查詢的結果都是一

樣的,關鍵區別在於,從城名服務器提供的解析結果並不是由自己決定的,而是來自於

主域名服務器,構建從域名服務器時,需要指定主域名服務器的位置,以便服務器能自

動同步區域的地址數據庫

以上所述主,從服務器的角色只是針對某一個特定的DNS 區域來說的。例如,同一臺DNS服務器

可以是china.net 區域的主域名服務器同時也可以是us.cn 區域的從域名服務器。

  1. 使用YUM倉庫安裝DNS軟件包

[root@localhost ~]# yum install -y bind bind-utils

各軟件包的主要作用如下。
bind:提供了域名服務的主要程序及相關文件。
bind-utils: 提供了對DNS 服務器的測試工具程序,如nslookup 等。
bind-libs: 提供了bind.bind-utils 需要使用的庫函數。
bind-chroot: 爲BIND 服務提供一個僞裝的根目錄(將/var/named/chroot/文件夾作力
的根目錄),以提高安全性。

2.查詢DNS所在的工作目錄,配置文件等

[root@localhost ~]# rpm -qc bind

/etc/logrotate.d/named

/etc/named.conf

/etc/named.iscdlv.key

/etc/named.rfc1912.zones

/etc/named.root.key

/etc/rndc.conf

/etc/rndc.key

/etc/sysconfig/named

/var/named/named.ca

/var/named/named.empty

/var/named/named.localhost

/var/named/named.loopback

3.編輯dns的配置文件

[root@localhost ~]# vim /etc/named.conf

listen-on port 53 { any; };

allow-query     { any; };

 主配置文件named .conf 通常位於/etc/目錄下,在named .conf 文件中,主要包括全後配置
區域配置兩個部分,每一條配置記錯錄的行尾以分號”,表示結束,以“# ”號或。/ /”開始的
部分表示註釋文字(大段註釋可以使用“/*.....*/" 的格式)。
1) 全局配置部分
全局配置參數包括在形如options 1;的大括號中,如可以設置監聽的地址和端口、區域
數據文件存放的目錄,允許哪些客戶機查詢等。 

 options 
liscen-on port 53 173.16.16.1; 
//監聽地址和端口
directory "/var/named";
/ 區城數據文件的默認存放位置
alloqguery 192.168.1.0724; 17 0.16.16.0 124;1.//元許使用本D5服務的阿度
上述配置內容中,除了dreclary 項通常會保留以外,其他的配置項都可以省略,若不指定
isten-on配置項時,named默認在所有接口的UDP 53端口監聽服務,不指定日low query 配置項
時,默認會響應所有客戶機的查詢請求,

4.修改區域配置文件

[root@localhost ~]# vim /etc/named.rfc1912.zones

在末尾添加以下內容

zone "benet.com" IN {

        type master;

        file "benet.com.zone";

        allow-update { none; };

};


zone "accp.com" IN {

        type master;

        file "accp.com.zone";

        allow-update { none; };

};


區域配置參數使用~zone.....{ 的配置格式,一臺DNS 服務器可以爲多個區域提供解

析,因此在named conf文件中也可以有很多個zone配置段,區域類按照解析方向可分爲正向區

域、反向區域,

// 正向"benet.com“區域

zone "benet.com" IN 1

//類型爲主區城

t ype mas te r ;

//區城數據文件爲benet.com.zone

file "benet.com.zone";

/1允許下載的從服務器地址

allow-transferI 173.16.16.2; 1;

zone "16.16.173.in-addr.arpa" INI //反向"13.16.16.0/24“區城

t ype ma s te ;

file "173.16.16.arpa";

//區城數據文件爲173.16.16.arpa

在上述配置內容中,有幾個地方需要注意。

每個zone區域都是可選的(包括根域、迴環域、反向域) 具體根據實際需要而定zone

配置部分的“N 關鍵字也可以省略。

反向區域的名稱由倒序的網絡地址和。in-addrapa 組合而成._例如,對於

192.168.10/24網段,其反向區域名稱表示爲“168.192.in-add apa.

file配置項用於指定實際的區域數據文件,文件名稱由管理員自行設置,

區域配置中的部分參數(如allew- transfer) 也可以 放在全面置裏,

修改完主配置文件以後,可以執行named-checkconf 命令對named conf 文件進行語法檢查

如果文件中沒有語法錯誤,該命令將不給出任何提示反之,則會給出相應的提示信息,只要根

據出錯提示修正文件中的錯誤即可。帶一2 選項的named-checkconf 命令還可以嘗試加載主配

置文件中對應的區域數據庫文件,並檢查該文件是否存在問題。例如,當出現“lenotfound

的錯誤時,表示找不到對應的文件。

關於named.conf 文件中各種配置項的詳細說明。可以執行nam named conf 查看手冊頁

5.修改區域數據配置文件

將原有的模版拷貝至新添加的模版(保留原有權限)

[root@localhost named]# cp -p named.localhost benet.com.zone

6.編輯新的模板

$TTL 1D

@       IN SOA  @ rname.invalid. (

                                        0       ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

        NS      @

        A       127.0.0.1

        AAAA    ::1

        PTR     localhost.

www     IN A    192.168.100.70

將benet拷貝成accp

[root@localhost named]# cp -p benet.com.zone accp.com.zone


收重區城名稱。管理部箱,以及爲從域名服務指定更新參數。

STTL 86400                    有效解析記錄的生存週期

@ IN SOA benet.com.adnin.benet.com.        SOA 標記、域名、管理郵箱

3H                        刷新時間,重新下載地址數據的間隔

2011030501                    更新序列號,可以是10 位以內的整數

15M                         重試延時,下載失敗後的重試間隔

IW                        失效時間,超過該時間仍無法下載則放棄

1D                        無效解析記錄的生存週期

上達配置內容中,時間單位默認爲秒,也可以使用以下單位,M (分。H (時),W(周。

"benet.com."."admin.benet.com

天),文件中的'@ 符號表示當前的DNS區域名,相當於

表示域管理員的電子郵箱地址(由於’@ 符號已有其他含義,因此將郵件地址中的~@”用

代替),SOA記錄中的更新序列號用來同步主、從服務器的區域數據,當從服務器判斷區域更新時,

若發現主服務器中的序列號與本地區域數據中的序列號相同,則不會進行下載。

2) 地址解析記錄部分

地址解析記錄用來設置DNS 區域內的域名,P 地址映射關係,包括正向解析記錄和反向解析

記錄。反向解析記錄只能用在反向區域數據文件中。

@     IN    NS    ns1.benet.com.

       IN    MX 10   mail.benet.com.

nsl    IN    A    58.119.74.203

www    IN    A    173.16.16.1

mail    IN      A    173.16.16.4

ftp    IN    CNAME    www

上述配置內容中,用到以下四種常見的地址解析記錄,

NS域名服務器(Name Server) 記錄當前區域的DNS 服務器的主機地址,

以郵件交換(Mail Exchange)記錄當前區域的部件服務器的主機地址,數字10 表示當

有多個以記錄時選擇部件服務器的優先級,數字越大優先級越低。

A 地址(address) 記錄正向服析條目。

CNAME別名(Canonical Name):記錄一個正向解析的其它名稱。

7.啓動服務

[root@localhost ~]# service named start (red hat 6)

[root@localhost ~]# systemctl start named (red hat 7)

8.指定dns地址

[root@localhost named]# echo "nameserver 192.168.100.70" > /etc/resolv.conf

8.驗證

[root@localhost named]# nslookup www.benet.com

Server:         192.168.100.70

Address:        192.168.100.70#53


Name:   www.benet.com

Address: 192.168.100.70


[root@localhost named]# nslookup www.accp.com

Server:         192.168.100.70

Address:        192.168.100.70#53


Name:   www.accp.com

Address: 192.168.100.70


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章