DNS篇之四 構建主從dns服務器


vim /etc/name.conf

options {


      directory "/var/named";

      recursion  yes;#定義開啓遞歸功能;默認是給所有用戶遞歸。

 allow-recursion  { 172.16.0.0/16;};  #表示只對這個網段的用戶遞歸;或者定義遞歸客戶端來源的;

 allow-query   #定義誰可以來進行查詢;

};


zone "." IN {

        type hint;

        file "named.ca";

allow-transfer { none; };

};


zone "localhost" IN {

        type master;

        file "named.localhost";

allow-transfer { none; };#表示localhost這個區域誰都不允許傳送;

};


zone "zledu.com" IN {

        type master;

        file "zledu.com.zone";

allow-transfer { 172.16.100.2; };#表示zledu.com這個區域只允許172.16.100.2這臺主機進行傳送。

};




dig  +recurse -t A www.sohu.com @172.16.100.1 

dig  +norecurse -t A www.sohu.com @172.16.100.1 


dig -trace -t A www.baidu.com @172.16.100.1 #顯示整個過程。


dig -t  axfr  zledu.com


axfs:完全區域傳送;

ixfs:增量區域傳送

區域傳送:(只能允許自己的從服務器進行數據傳送,如何定義有哪些主機進行傳送)

主、從。


如何建立DNS的從服務器?

rpm -e bind-libs bind-utils

scp 172.16.100.1:/etc/yum.repos.d/server.repo ./

yum -y install  bind97 bind97-utils


ls -l /var/named/#注意同步數據的時候是以named用戶,named組來同步數據的;因此直接放在這個目錄下面是不可以的;

同步過來的時候,直接放在slave目錄下即可;有兩種方案;

[root@localhost ~]# setenforce 0

setenforce: SELinux is disabled

[root@localhost etc]# mv named.conf /etc/named.conf.org

[root@localhost etc]# scp 172.16.100.1:/etc/named.conf /etc/

vim name.conf

zone "zledu.com" IN {

        masters { 172.16.100.1; };

        type slave;

        file "slaves/zledu.com.zone";

        allow-transfer { none; };

};

zone "100.16.172.in-addr.arpa" IN {

        type slave;

        file "slaves/172.16.100.zone";

        masters { 172.16.100.1; };

        allow-transfer { none; };

};


[root@localhost ~]# cat /var/named/zledu.com.zone 

$TTL 600

zledu.com.  IN  SOA  ns1.zledu.com.   admin.zledu.com. (

        20150523

        1H

        5M

        2D

        6H )


            IN  NS     ns1

            IN  NS     ns2

            IN  MX  10 mail

ns1         IN  A     172.16.100.1

ns2         IN  A     172.16.100.2

mail        IN  A     172.16.100.2

pop         IN  A     172.16.100.4

www         IN  A     172.16.100.1

www         IN  A     172.16.100.3



DNS的日誌文件路徑/var/log/messages:

[root@localhost etc]# service named start 

[root@localhost etc]# tail /var/log/messages


在同步的時候,可能會出現錯誤,需要將我們的NS記錄再增加一條即可;當我們新增加一條ns服務器的時候,一定要加一條記錄。

rndc: 遠程管理dns服務器用的;

-h查看幫助信息;

rndc-confgen >/etc/rndc.conf

[root@localhost ~]# cat /etc/rndc.conf 

# Start of rndc.conf

key "rndc-key" {

        algorithm hmac-md5;

        secret "GluqNmX4q97sW1a55ZUhqw==";

};


options {

        default-key "rndc-key";

        default-server 127.0.0.1;

        default-port 953;

};

# End of rndc.conf


# Use with the following in named.conf, adjusting the allow list as needed:

# key "rndc-key" {

#       algorithm hmac-md5;

#       secret "GluqNmX4q97sW1a55ZUhqw==";

# };

# controls {

#       inet 127.0.0.1 port 953

#               allow { 127.0.0.1; } keys { "rndc-key"; };

# };

# End of named.conf

將其追加到/etc/name.conf裏面;


rndc -c /etc/rndc.conf           #默認就能控制服務器了;


[root@localhost ~]# service named reload 

Reloading named: [  OK  ]

[root@localhost ~]# rndc -c /etc/rndc.conf status 

我們當前的主機能否控制遠端主機,需要修改named.conf裏面的配置文件;

cat  /etc/named.conf

controls {

        inet 127.0.0.1 port 953   #表示監聽主機的端口;

                allow { 127.0.0.1; } keys { "rndc-key"; };#表示允許那臺主機來控制;

};


controls {

        inet 172.16.100.1 port 953

                allow { 172.16.100.2; } keys { "rndc-key"; };

};

接着執行如下操作即可;

scp /etc/rndc.conf 172.16.100.2:/root

再在172.16.100.2上進行相應的修改;

[root@localhost slaves]# cat /root/rndc.conf 

# Start of rndc.conf

key "rndc-key" {

        algorithm hmac-md5;

        secret "GluqNmX4q97sW1a55ZUhqw==";

};


options {

        default-key "rndc-key";

        default-server 172.16.100.1;

        default-port 953;

};

[root@localhost slaves]# rndc -c /root/rndc.conf status


注意在本機上進行控制很常用,允許遠程主機用的話,還是很少見的,所以我們至少要在本機上生成一個配置文件。


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