DNS服務搭建

1、DNS基礎css

  域名系統(DNS)是一個層次化得分佈式數據庫。存儲用於互聯網主機名與IP地址相映射的信息,郵件路由信息,及其它互聯網應用所用到的數據。DNS(Domain Name System,域名系統),因特網上做爲域名和IP地址相互映射的一個分佈式數據庫,可以使用戶更方便的訪問互聯網,而不用去記住可以被機器直接讀取的IP數串。經過主機名,最終獲得該主機名對應的IP地址的過程叫作域名解析(或主機名解析)。DNS協議運行在UDP協議之上,使用端口號53。linux

  客戶端經過調用一個解析器庫來在DNS 中查找信息,解析器向一個或多個名字服務器發出請求並解釋響應。BIND 9軟件分發包中包括一個名字服務器,named,和一個解析器庫,liblwres。舊的libbind解析器庫也能夠做爲一個單獨的下載包從ISC獲得。數據庫

2、DNS功能vim

  每一個 IP地址均可以有一個主機名,主機名由一個或多個字符串組成,字符串之間用小數點隔開。有了主機名,就不要死記硬背每臺IP設備的IP地址,只要記住相對直觀有意義的主機名就好了。這就是DNS協議所要完成的功能。
主機名到IP地址的 映射有兩種方式:
1)靜態映射,每臺設備上都配置主機到IP地址的映射,各設備獨立維護本身的映射表,並且只供本設備使用;
2)動態映射,創建一套域名解析系統(DNS),只在專門的DNS服務器上配置主機到IP地址的映射,網絡上須要使用主機名通訊的設備,首先須要到DNS服務器查詢主機所對應的 IP地址
經過 主機名,最終獲得該主機名對應的IP地址的過程叫作域名解析(或主機名解析)。在解析域名時,能夠首先採用靜態域名解析的方法,若是 靜態域名解析不成功,再採用動態域名解析的方法。能夠將一些經常使用的域名放入靜態域名解析表中,這樣能夠大大提升域名解析效率。

 3、域名結構緩存

  一般 Internet 主機域名的通常結構爲:主機名.三級域名.二級域名.頂級域名。 Internet 的頂級域名由 Internet網絡協會域名註冊查詢負責網絡地址分配的委員會進行登記和管理,它還爲 Internet的每一臺主機分配惟一的 IP 地址。全世界現有三個大的網絡信息中心: 位於美國的 Inter-NIC,負責美國及其餘地區; 位於荷蘭的RIPE-NIC,負責歐洲地區;位於日本的APNIC ,負責亞太地區安全

4、搭建DNS服務器服務器

環境:CentOS Linux release 7.4.1708 (Core)網絡

關閉iptables和selinuxsession

1)安裝(bind主要軟件,bind-util提供測試工具,bind-chroot提供一個假裝的根目錄以加強安全性(將「/var/named/chroot/」文件夾做爲BIND的根目錄)
[root@controller ~]# yum -y install bind bind-chroot bind-util bind-libs

2)DNS配置
#備份
[root@controller ~]# cp /etc/named.conf{,.bak}
#修改配置
[root@controller ~]# vim   /etc/named.conf
//
// named.conf
//
#options 控制全局服務配置和爲其它語句設置缺省參數。
options {
        listen-on port 53 { any; };    #監聽端口53,默認監聽127.0.0.1,修改成any容許任意主機,注意{}必定要空格
        listen-on-v6 port 53 { ::1; };  #監聽ipv6的IP地址選項
        directory       "/var/named";     #DNS的根目錄,因爲安裝了bind-chroot的所致,所以服務的實際工做目錄爲/var/named/chroot/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";
        allow-query     { any; };  #容許查詢的主機,默認爲localhost,這裏修改成any
        recursion yes;    #開啓遞歸查詢

        dnssec-enable yes;
        dnssec-validation yes;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};
#logging 指定服務器紀錄哪些日誌,和在哪裏紀錄日誌消息
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
#zone 定義一個區
zone "." IN {
        type hint;
        file "named.ca";
};

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

#受權
[root@controller var]# chmod 770 /var/named/
#啓動服務
[root@controller var]# service named start
[root@controller var]# ss -lnt|grep 53
LISTEN     0      10     172.17.0.1:53                       *:*   

3)客戶機測試
修改resolve.conf文件添加dns服務器ip
[root@lvs_m ~]# cat /etc/resolv.conf 
# Generated by NetworkManager
nameserver 192.168.128.169

[root@lvs_m ~]# nslookup
> www.baidu.com
Server:         192.168.128.169
Address:        192.168.128.169#53

Non-authoritative answer:
www.baidu.com   canonical name = www.a.shifen.com.
Name:   www.a.shifen.com
Address: 14.215.177.38
Name:   www.a.shifen.com
Address: 14.215.177.39

4)添加自定義域名
一、修改/etc/named.conf文件添加以下內容
...
zone "www.baidu.com" IN {                #正向解析,指定區域
        type master;                         #服務器類型,master爲主域名
        file "www.baidu.com_zone";           #正向解析區域文件名www.baidu.com_zone,在/var/named目錄下建立
        allow-transfer {192.168.128.171;};    #從DNS服務器地址
};

zone "128.168.192.in-addr.arpa" IN {      #反向解析,ip段爲192.168.128.0/24 反寫
        type master;
        file "192.168.128.zone";          #反向解析文件名
        allow-transfer {192.168.128.171;};
};
#檢查語法這點很重要,否則服務會出錯。
[root@controller ~]# named-checkconf 
#建立域文件
$TTL 180
@       IN SOA  yxb.qq.com. root.www.baidu.com. ( ;
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        44H )    ; minimum
@       IN      NS     ns1.www.baidu.com.      ;
ns1.www.baidu.com.    IN  A   192.168.128.169
www.baidu.com. IN A 192.168.128.211    #添加A紀錄能夠是多個地址             
www.baidu.com. IN A 192.168.128.212

#建立反向解析域文件
[root@controller ~]# cat /var/named/192.168.128.zone 
$TTL 180
@       IN SOA  yxb.qq.com. root.www.baidu.com. ( ;
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        44H )    ; minimum
@       IN      NS     ns1.www.baidu.com. 
169 IN PTR ns1.www.baidu.com.
211 IN PTR www.baidu.com.
212 IN PTR www.baidu.com.
#檢查語法
[root@controller ~]# named-checkzone www.baidu.com /var/named/www.baidu.com_zone 
zone www.baidu.com/IN: loaded serial 0
OK
#重啓dns服務
[root@controller ~]# service named restart 

#客戶機測試
[root@lvs_m ~]# dig www.baidu.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6 <<>> www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64633
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1

;; QUESTION SECTION:
;www.baidu.com.                 IN      A

;; ANSWER SECTION:
www.baidu.com.          180     IN      A       192.168.128.212
www.baidu.com.          180     IN      A       192.168.128.211

;; AUTHORITY SECTION:
www.baidu.com.          180     IN      NS      ns1.www.baidu.com.

;; ADDITIONAL SECTION:
ns1.www.baidu.com.      180     IN      A       192.168.128.169

;; Query time: 1 msec
;; SERVER: 192.168.128.169#53(192.168.128.169)
;; WHEN: Thu Nov 23 00:52:38 2017
;; MSG SIZE  rcvd: 97

5)DNS從服務器配置,只需配置/etc/named.conf文件不須要添加域文件
軟件安裝:
[root@lvs_m ~]# yum -y install bind bind-chroot bind-util bind-libs
#修改配置文件
[root@lvs_m ~]# vim /etc/named.conf
options {
        listen-on port 53 { any; };
        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";
        allow-query     { any; };
        recursion yes;

        dnssec-enable yes;
        dnssec-validation yes;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
        type hint;
        file "named.ca";
};
zone "www.baidu.com" IN {
        type slave;                         #類型設置爲slave
        file "www.baidu.com_zone";
        masters { 192.168.128.169; };              #主服務器ip
};

zone "128.168.192.in-addr.arpa" IN {
        type slave;
        file "192.168.128.zone";
        masters { 192.168.128.169; };
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

[root@lvs_m ~]# chmod 770 /var/named/
[root@lvs_m ~]# ll /var/named/ -d
drwxrwx---. 6 root named 4096 Nov 23 01:07 /var/named/
[root@lvs_m ~]# named-checkconf 
[root@lvs_m ~]# service named restart

#測試
[root@controller ~]# dig www.baidu.com @192.168.128.171

; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7 <<>> www.baidu.com @192.168.128.171
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 23616
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.baidu.com.                 IN      A

;; ANSWER SECTION:
www.baidu.com.          180     IN      A       192.168.128.211
www.baidu.com.          180     IN      A       192.168.128.212

;; AUTHORITY SECTION:
www.baidu.com.          180     IN      NS      ns1.www.baidu.com.

;; ADDITIONAL SECTION:
ns1.www.baidu.com.      180     IN      A       192.168.128.169

;; Query time: 226 msec
;; SERVER: 192.168.128.171#53(192.168.128.171)      //成功
;; WHEN: Thu Nov 23 04:36:22 EST 2017
;; MSG SIZE  rcvd: 108

 

 

相關文章
相關標籤/搜索