只提供域名解析結果的緩存功能,目的在於提升數據查詢速度和效率,可是沒有本身控制的區域地址數據。構建緩存域名服務器時,必須設置根域或指定其餘DNS服務器做爲解析來源。linux
維護某一個特定DNS區域的地址數據庫,對其中的解析記錄具備自主控制權,是指定區域中惟一存在的權威服務器、官方服務器。構建主域名服務器時,須要自行創建全部負責區域的地址數據文件。
數據庫
與主域名服務器提供徹底相同的DNS解析服務,一般用於DNS服務器的熱備份。對客戶機來講,不管使用主域名服務器仍是從域名服務器,查詢結果都是同樣的。
vim
當客戶機向DNS服務器發出解析請求,DNS服務器從服務器本地的惟高速緩存中查詢出結果,反饋給客戶機,此過程稱爲遞歸查詢
centos
name: 當前區域的名字,例如「xxx.com.」
value: 有多部分組成
(1) 當前區域的主DNS服務器的FQDN,也可使用當前區域的名字;
(2) 當前區域管理員的郵箱地址;但地址中不能使用@符號,通常用.替換,例如 linuxedu.magedu.com
(3) 主從服務區域傳輸相關定義以及否認的答案的統一的TTL 緩存
$TTL 1D @ IN SOA @ admin.xxx.com. ( 0 ; serial 序列號 1D ; refresh 刷新時間 1H ; retry 重試時間 1W ; expire 過時時間 3H ) ; minimum 否認答案的TTL值
$TTL 1D @ IN SOA @ xxx.com. admin.xxx.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum xxx.com. NS ns1.xxx.com. ns1.xxx.com. A 192.168.172.129
$TTL 1D @ IN SOA xxx.com. . admin.magedu.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum @ NS ns1.xxx.com. 192.168.172.129 PTR ns1.xxx.com.
name: 當前區域的名字
value: 當前區域的某DNS服務器的名字
注意:一個區域能夠有多個NS記錄
例如:服務器
xxx.com. IN NS ns1.xxx.com. xxx.com. IN NS ns2.xxx.com.
注意:
(1) 相鄰的兩個資源記錄的name相同時,後續的可省略
(2) 對NS記錄而言,任何一個ns 記錄後面的服務器名字,都應該在後續有一個A記錄dom
準備條件:192.168.0.254爲主服務器,192.168.0.253爲從服務器tcp
[root@centos6 ~]# yum -y install bind\
[root@centos6 ~]# 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; }; allow-transfer { 192.168.0.253; };#受權才能夠作從服務器 zone "." IN { type hint; file "named.ca"; }; zone "alice.com" IN { type master; file "named.alice.com"; }; zone "0.168.192.in-addr-arpa" IN { type master; file "named.192.168.0"; }; };
[root@centos6 ~]# vim /var/named/named.alice.com $TTL 1D @ IN SOA master.alice.com. rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum @ IN NS master.alice.com. master.alice.com. IN A 192.168.0.254 @ IN NS slave.alice.com. slave.alice.com. IN A 192.168.0.253 client.alice.com. IN A 192.168.0.10 [root@centos6 ~]# vim /var/named/named.192.168.0 $TTL 1D @ IN SOA master.alice.com. rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum @ NS master.alice.com. @ NS slave.alice.com. 254 IN PTR master.alice.com. 253 IN PTR slave.alice.com. 10 IN PTR client.alice.com.
[root@centos6 ~]# service named start Starting named: [ OK ]
[root@centos6 ~]# 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; }; zone "." IN { type hint; file "named.ca"; }; zone "alice.com" IN { type master; file "slaves/named.alice.com"; }; zone "0.168.192.in-addr-arpa" IN { type master; file "slaves/named.192.168.0"; };
[root@centos6 named]# ll total 40 -rw-r-----. 1 root named 230 Sep 15 05:25 192.168.172.zone drwxrwx---. 2 named named 4096 Sep 16 03:41 data drwxrwx---. 2 named named 4096 Sep 16 04:24 dynamic -rw-r-----. 1 root named 3171 Jan 11 2016 named.ca -rw-r-----. 1 root named 713 Sep 15 21:13 named.ca.rpmsave -rw-r-----. 1 root named 152 Dec 15 2009 named.empty -rw-r-----. 1 root named 152 Jun 21 2007 named.localhost -rw-r-----. 1 root named 168 Dec 15 2009 named.loopback drwxrwx---. 2 named named 4096 Sep 16 04:52 slaves
準備條件:
client:192.168.153.5
caching: 192.168.153.10
. : 192.168.152.9
com: 192.168.153.8
magedu: master 192.168.153.7 slave 192.168.153.6ide
[root@centos6 ~]# yum -y install bind;setenforce 0;iptables -F
安裝bind的服務器的配置文件oop
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 no;#caching服務器寫爲yes dnssec-enable no; dnssec-validation no; /* 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";}; include "/etc/named.rfc1912.zones"; include "/etc/named.root.key";
[root@centos6 ~]# vim /var/named/named.ca . 3600000 NS A.ROOT-SERVERS.NET. A.ROOT-SERVERS.NET. 3600000 A 192.168.153.9
zone "." IN { type master; file "root.zone"; };
c. root.zone
$TTL 1D @ IN SOA ns. admin. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS ns. ns. A 192.168.153.9 com. NS ns.com. ns.com. A 192.168.153.8
d.啓動named
zone "com" IN { type master; file "com.zone"; };
b. com.zone
$TTL 1D @ IN SOA ns.com. rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS ns.com. ns.com. A 192.168.153.8 magedu.com. NS ns1.magedu.com. magedu.com. NS ns2.magedu.com. ns1.magedu.com. A 192.168.153.7 ns2.magedu.com. A 192.168.153.6
c.啓動named
zone "magedu.com" IN { type master; file "magedu.com.zone"; };
b. magedu.com.zone
$TTL 1D @ IN SOA ns1.magedu.com. rname.invalid. ( 2018091301 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS ns1.magedu.com. NS ns2.magedu.com. A 192.168.153.7 ns2 A 192.168.153.6 www A 1.1.1.1 ftp A 2.2.2.2 * A 10.10.10.10
c.啓動named
zone "magedu.com" IN { type slave; masters { 192.168.153.7; }; file "slaves/MAGEDU.COM.ZONE"; };
b. 啓動named
[root@centos6 ~]# vim /etc/resolv.conf domain magedu.com search magedu.com localdomain nameserver 172.18.0.1 nameserver 192.168.172.1 nameserver 192.168.153.10 #指向緩存caching
測試
[root@localhost ~]# nslookup ftp.magedu.com Server: 192.168.83.132 Address: 192.168.83.132#53 Non-authoritative answer: Name: ftp.magedu.com Address: 2.2.2.2 [root@localhost ~]# nslookup hsh.magedu.com Server: 192.168.83.132 Address: 192.168.83.132#53 Non-authoritative answer: Name: hsh.magedu.com Address: 10.10.10.10