天天看點

通過bind實作DNS服務

軟體包安裝

bind            DNS主程式安裝包

bind-libs      庫

bind-utils     搜尋主機名稱的相關指令

bindchroot    最小權限範圍設定

安裝bind

#yum -y install bind

/etc/init.d/named啟動腳本

第一部分:配置本地DNS緩存伺服器

1、主配置檔案設定:/etc/named.conf

#vim /etc/named.conf

options {

     directory “/var/named";

};

zone "." IN {             #定義根域配置檔案

    type hint;

     file "named.root";

zone "localhost" IN {      #定義本機區域正向解析檔案

    type master;

    file "localhost.zone;

zone "0.0.127.in-addr.arpa" { #定義本機區域反解檔案

    file "named.local"

2、配置name.root

 #dig -t NS . @a.root-servers.net > /var/named.root(通過根伺服器找所有13個根域伺服器)

3、配置本地正向解析檔案/var/named/localhost.zone

#vim /var/named/localhost.zone

$TTL 86400

@    IN    SOA    localhost.      admin.localhost. (

                2011060301

               1H

                10M

                7D

                1D )

@   IN     NS       localhost.

localhost.  IN A 127.0.0.1

4、配置本地反向解析檔案/var/named/named.local

# vim /var/named/named.local

@   IN     SOA      localhost.    admin.localhost.(

               1H

               10M

                 7D

@    IN     NS         localhost.

1      IN     PTR       localhost.

注:一個程序運作以一個使用者身份運作,bind以named使用者運作,是以上述建立的檔案要更改屬主屬組

指令:

#chown :named /etc/named.conf

#chown :named /var/named/* -R

啟動服務可以驗證緩存伺服器是否生效

驗證配置檔案文法錯誤:

#service named configtest  

啟動指令:

#service named start

在驗證上述緩存DNS能否使用時,要更改本機DNS伺服器指向

vim /etc/resolv.conf

nameserver 192.168.0.34 (這裡設定為你的主機IP位址)

上述4步隻是建立一個本地緩存DNS,他不能解析本地主機,隻負責将本地請求發送給根域解析外部主機IP,

查找指令:

#dig -x 127.0.0.1        查找127.0.0.1的主機名   

#dig -t A localhost.     查找localhost.的IP

#dig -t A www.baidu.com  查詢baidu的IP

上述指令是查找某一個資源記錄所對應的結果

遠端工具rndc的使用

rndc程序與named程序通信需要一組密鑰

生成rndc需要使用的密鑰,

#rndc-confgen > /etc/rndc.conf  (rndc.conf是rndc的配置檔案)

将rndc.conf倒數第二到倒數第10行去掉#後追加到named.conf中

指令:

#tail /etc/rndc.conf | head -9 | sed ‘s/^*//g' >> /etc/named.conf

rndc的基本指令:

#rndc flush 清空NDS伺服器緩存

#rndc status  檢視DNS伺服器狀态

#rndc stop    停止DNS服務

#rndc reload  重新讀取配置檔案

第二部分:将緩存伺服器擴充為主伺服器

假設申請到域名a.com域名,需要建立一個DNS伺服器來解析此域内的所有主機IP以及反解

假設域内的主機及IP如下:

通過bind實作DNS服務

繼續閱讀