Linux-DNS

Linux-DNS主從服務

        DNS,域名解釋。所謂域名解釋可以理解爲人的***號碼與姓名的關係。網站也有對應的IP和域名,訪問IP和域名都可以達到目的,但誰會去記IP?就像誰會記得你的***號碼一樣。DNS就是將這兩者互相解釋,因此分爲正向和反向。

        以紅冒企業版RHEL5爲例,並以著名DNS服務器軟件BIND爲例。搭建主域名服務器和從域名服務器。這裏所謂的主從,是從服務器同步主服務器,可以作爲DNS服務器熱備,只是數據源於主服務器。

安裝BIND軟件,可以到其官方網站下載,https://www.isc.org。主要包括bindbind-utilsbind-libsbindchrootcaching-nameserver

    mount /dev/cdrom /media/cdrom

     rpm -Uvh /media/cdrom/Server/bind-9.3.3-7.el5.i386.rpm 

    rpm -Uvh /media/cdrom/Server/caching-nameserver-*

    rpm -Uvh /media/cdrom/Server/bind-chroot-*

        安裝完成後,會自動增加一個named到系統服務。配置文件主要爲主配置文件和區域配置文件,搞定兩者則可以了!!

        首先,確定本機IP,主機映射,默認DNS地址等。例如IP地址爲192.168.78.129,主機名爲dns.test.com。修改/etc/hosts文件,將DNS地址映射寫入:

    vim /etc/hosts

    ....//

    192.168.78.129 dns.test.comdns

    192.168.78.130dns2.test.comdns2

修改/etc/resolv.conf文件,提高解析速度。

    vim /etc/resolv.conf

    nameserver192.168.78.129

    nameserver192.168.78.130

        主配置文件常位於/etc/目錄下,剛纔安裝了bind-chroot後,則主配置文件默認位於/var/named/chroot/etc/目錄下,而且需要手動創建,但可以複製配置文件。

    cd /var/named/chroot/etc/

    cp -p named.caching-nameserver.conf named.conf

-p是爲了保留權限。

wKiom1Sww7nBY-MSAABqHzNkvHE535.jpg

    vim /var/named/chroot/etc/named.conf

通常除了directory項保留外,其餘都可以刪除。

options {

        listen-on port 53 { 127.0.0.1; };        //監聽地址和端口

        listen-on-v6 port 53 { ::1; };

        directory       "/var/named";            //區域數據文件的默認存放位置

        dump-file       "/var/named/data/cache_dump.db";

        statistics-file "/var/named/data/named_stats.txt";

        memstatistics-file "/var/named/data/named_mem_stats.txt";

        query-source    port 53;        

        query-source-v6 port 53;

        allow-query     { localhost; };            //允許使用本DNS服務到的網段,可以是多個,例如allow-query     {192.168.1.0/24192.168.2.0/24};

};

logging {

        channel default_debug {

                file "data/named.run";

                severity dynamic;

        };

};

view localhost_resolver {

        match-clients      { localhost; };

        match-destinations { localhost; };

        recursion yes;

        include "/etc/named.rfc1912.zones";

};

//修改成如下

options {

        directory       "/var/named";

};

zone "test.com" IN {            //正向“test.com”區域

        type master ;                //類型爲主區域

        file "test.com.zone";            //區域數據文件爲test.com.zone

        allow-transfer {192.168.78.130;};        //允許下載到從服務器地址

};

zone "78.168.192.in-addr.arpa" IN {        //反向”192.168.78.0/24“區域

        type master;

        file "192.168.78.arpa";                    //區域數據文件爲78.168.192.arpa

allow-transfer {192.168.78.130;};

};

保存退出。

通過命令可以查看語法有沒有錯誤。

    named-checkconf -z /var/named/chroot/etc/named.conf

區域配置文件,通常位於/var/named/目錄下,又因爲安裝了bind-chroot軟件包,默認目錄爲/var/named/chroot/var/named/目錄下。

複製一份區域配置文件作修改,並且文件名修改爲主配置文件所設置的區域名。

    cp -p /var/named/chroot/var/named/localhost.zone /var/named/chroot/var/named/test.com.zone

    vim /var/named/chroot/var/named/test.com.zone

 

$TTL    86400//有效解析記錄的生存週期

@               IN SOA  @       root(            //SOA標記,域名,管理郵箱

            2015010801                 //更新序列號,10位以內的整數

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

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

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

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

IN NS           @            //NS域名服務器

IN A            127.0.0.1        //記錄正向解析條目

IN MX         127.0.0.1        //郵件交換

將其修改爲如下:

$TTL    86400

@           IN SOA  test.com.      admin.test.com. (

              2015010801

              3H

              15M

              1W

              1D 

)

 

@               IN NS           dns.test.com.

                IN MX   10      mail.test.com.

dns             IN A            192.168.78.129

mail            IN A            192.168.78.1

www             IN A            192.168.78.2

*               IN A            192.168.78.129

切記格式,每個域名後面須加.  否則出錯。

修改反向區域配置文件,一樣是複製並修改。

    cp -p /var/named/chroot/var/named/localhost.zone /var/named/chroot/var/named/192.168.78.arpa

    vim /var/named/chroot/var/named/192.168.78.arpa 

修改成如下:

$TTL    86400

@               IN SOA  test.com.       admin.test.com. (

                                        2015010801

       3H                                                                              

15M

                                        1W

                                        1D )

                IN NS           dns.test.com.

129             IN PTR          dns.test.com.

2               IN PTR          www.test.com.

1               IN PTR          mail.test.com.

保存退出。

重啓服務

    service named restart

在客戶端的DNS地址設置爲服務器IP 192.168.78.129

wKioL1SwxXXxohHXAABbQkrFpSs244.jpg

cmd命令行裏測試輸入nslookup;在linux中也可以輸入該命令測試。

    C:\Documents and Settings\Administrator>nslookup

如果出現如下提示

wKiom1SwxLHSGafEAABjOma4raU891.jpg

Default Server:  UnKnown不知道服務器的。則說明是反向解析配置出現問題,不能進行解析。這時需要檢查反向解析配置文件,格式,地址,名稱等。

在裏面輸入要解析的地址或IP

wKioL1SwxXajkVU1AACnuyF8hpQ982.jpg

從服務器,IP地址爲192.168.78.130,主機名爲dns2.test.com,主機映射文件/etc/hostsDNS解析文件/etc/resolv.conf與主服務器一樣配置即可。

修改named.conf時,和主服務器有以下區別:

options {

        directory       "/var/named";

};

zone "test.com" IN {//正向“test.com”區域

        type slave;    //類型爲從服務器

        masters { 192.168.78.129; };//指定主服務器IP

        file “slaves/test.com.zone";//下載的區域文件存放到slaves目錄

};

zone "78.168.192.in-addr.arpa" IN {//反向”192.168.78.0/24“區域

        type slave;    //類型爲從服務器

masters { 192.168.78.129; };//指定主服務器IP

        file "slaves/192.168.78.arpa";//下載的區域文件存放到slaves目錄

};

確保named用戶對存放目錄有寫入權限,纔可以成功下載。

    ls -ld /var/named/chroot/var/named/slaves/

    drwxrwx--- 2 named named 4096 2015-01-08 /var/named/chroot/var/named/slaves/

如果屬宿主,權限有誤,則修改。

在客戶端上,從服務器和主服務器都沒有什麼區別,都可以解析得到。

將客戶機的DNS地址換爲192.168.78.130,測試亦可以成功解析!!


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