Centos 5.2安装配置DNS服务器

BIND安装配置(主从)
我的系统环境:centos 5.2

作者:哈密瓜


主:
我采用的是yum安装
[root@linux src]#yum -y install bind*

生成rndc控制命令的key文件
[root@linux usr]# sbin/rndc-confgen > /etc/rndc.conf 
从rndc.conf文件中提取named.conf用的key 
[root@linux usr]# cd /etc
[root@linux etc]# tail -10 rndc.conf | head -9 | sed s/#\ //g >

/var/named/chroot/etc/named.conf 
自动在/var/named/chroot/etc下生成named.conf文件

进入/var/named/chroot/etc
[root@linux etc]# cd /var/named/chroot/etc
现在named.conf文件中有了rndc-key区段
[root@linux etc]# more named.conf
key "rndc-key" {

           algorithm hmac-md5;

           secret "Nd0nLoL8t4Mv0iSpqP1noA==";

};


controls {

           inet 127.0.0.1 port 953

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

};
然后我们来完善它:
[root@linux etc]#vi named.conf
options { 
directory "/var/named"; 

}; 

zone "." IN { 
type hint; 
file "named.ca"; 
}; 

zone "localhost" IN { 
type master; 
file "localhost.zone"; 
}; 

zone "0.0.127.in-addr.arpa" IN { 
type master; 
file "named.local"; 
}; 

zone "learningsky.org" IN { 
type master; 
file "learningsky.zone"; 
allow-transfer { 192.168.22.155 ; };  //192.168.22.155为本机网关
notify yes;
also-notify { 192.168.22.155 ; };   //使用notify指令会自动通知所有这个域的所有在

ns记录上的机器,also-notify指令可以用来通知所有不在ns记录上的dns服务器.
}; 

zone "22.168.192.in-addr.arpa" IN { 
type master; 
file "22.168.192"; 
allow-transfer { 192.168.22.155 ; };
notify yes;
also-notify { 192.168.22.155 ; };
};

key "rndc-key" {

           algorithm hmac-md5;

           secret "Nd0nLoL8t4Mv0iSpqP1noA==";

};


controls {

           inet 127.0.0.1 port 953

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

};

进入/var/named/chroot/var/named
[root@linux etc]# cd /var/named/chroot/var/named

建立localhost.zone文件
[root@linux named]#vi localhost.zone
$TTL       86400
$ORIGIN localhost.
@                          1D IN SOA          @ root (
                                           42                 ; serial (d. adams)
                                           3H                 ; refresh
                                           15M                ; retry
                                           1W                 ; expiry
                                           1D )               ; minimum

                           1D IN NS           @
                           1D IN A            127.0.0.1

建立named.local文件
[root@linux named]#vi named.local
$TTL       86400
@          IN         SOA        localhost. root.localhost.  (
                                         1997022700 ; Serial
                                         28800         ; Refresh
                                         14400         ; Retry
                                         3600000       ; Expire
                                         86400 )       ; Minimum
                 IN         NS         localhost.

1          IN         PTR        localhost.


dig命令直接生成named.ca文件
[root@linux named]#dig > named.ca
建立learningsky.org域名正向解析文件
[root@linux named]#vi learningsky.zone
$TTL       86400
$ORIGIN learningsky.org.
@               1D      IN SOA  dns.learningsky.org.  root.mail.learningsky.org.

(

                                          1053891162
                                           3H
                                           15M
                                           1W
                                           1D )

                      1D  IN NS             dns.learningsky.org.
                      1D  IN MX       5        mail.learningsky.com.
dns                   IN A             192.168.22.150    //192.168.22.150为本机IP
mail                  IN A             192.168.22.150
www                   IN A             192.168.22.150

建立learningsky.org域名反向解析文件
[root@linux named]#vi 22.168.192
$TTL 86400
@ IN SOA dns.learningsky.org. root.mail.learningsky.org.(
                                          20031001;
                                          7200;
                                          3600;
                                          43200;
                                          86400);
@                     IN NS dns.learningsky.org.
150                   IN PTR dns.learningsky.org.
150                   IN PTR mail.learningsky.org.
150                   IN PTR www.learningsky.org.                                

 


[root@linux named]#netstat -an |grep :53
tcp           0         0 192.168.22.150:53              0.0.0.0:*               

      LISTEN     

     
tcp           0         0 127.0.0.1:53                   0.0.0.0:*               

      LISTEN     

     
udp           0         0 192.168.22.150:53              0.0.0.0:*               

              

     
udp           0         0 127.0.0.1:53                   0.0.0.0:*               

              

     

修给reslov.conf
[root@linux named]#vi /etc/reslov.conf
nameserver 192.168.22.150
search learningsky.org

[root@linux etc]# ps -aux|grep named
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ
named       13310  0.0  0.5  38160  2900 ?           Ssl  14:53      0:00

/usr/sbin/named -u

named -t /var/named/chroot
root        13375  0.0  0.1      5212      688 pts/1       R+      16:08     

0:00 grep named

[root@linux etc]#more nsswitch.conf
# To use db, put the "db" in front of "files" for entries you want to be
# looked up first in the databases
#
# Example:
#passwd:       db files nisplus nis
#shadow:       db files nisplus nis
#group:        db files nisplus nis

passwd:        files
shadow:        files
group:         files

#hosts:        db files nisplus nis dns
hosts:         files dns

# Example - obey only what nisplus tells us...
#services:      nisplus [NOTFOUND=return] files
#networks:      nisplus [NOTFOUND=return] files
#protocols:  nisplus [NOTFOUND=return] files
#rpc:           nisplus [NOTFOUND=return] files
#ethers:        nisplus [NOTFOUND=return] files
#netmasks:      nisplus [NOTFOUND=return] files       

bootparams: nisplus [NOTFOUND=return] files

ethers:        files
netmasks:      files
networks:      files

[root@linux etc]# more host.conf
order hosts,bind

启动named
/[root@linux etc]# usr/local/sbin/named

测试DNS
[root@linux etc]# nslookup
>www.learningsky.org
Server:            192.168.22.150
Address:           192.168.22.150#53

Name:      www.learningsky.org
Address: 192.168.0.244

>192.168.22.250
Server:            192.168.22.250
Address:           192.168.22.250#53

150.22.168.192.in-addr.arpa        name = dns.learningsky.org.
150.22.168.192.in-addr.arpa        name = www.learningsky.org.
150.22.168.192.in-addr.arpa        name = mail.learningsky.org.

>set type=MX
>learningsky.org
Server:            192.168.22.150
Address:           192.168.22.150#53

learningsky.org mail exchanger = 5 mail.learningsky.com.
>exit

主DNS配置完成。

从:
安装跟主的一样,不同的就是named.conf
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" IN {
type master;
file "named.local";
}; 

zone "learningsky.org" IN {
type slave;
file "learningsky.zone";
masters { 192.168.22.150; };
}; 

zone "22.168.192.in-addr.arpa" IN {
type slave;
file "22.168.192";
masters { 192.168.22.150; };
};

key "rndc-key" {
          algorithm hmac-md5;
          secret "80hKqo5bkGMAqHqeAlaLCA==";
};

controls {
          inet 127.0.0.1 port 953
                  allow { 127.0.0.1; } keys { "rndc-key"; };
};

注:
1、主从同步的两台机器要在同一个时区,时间相差不要太大。
2、主的dns服务器在修改了正向解析文件跟反向分解析文件时,要修改相应的 serial(通常

是加数值,这个值必须主的要大于从的,要不同步不了)
3、/var/named/chroot这个文件的宿主要是named,不是那权限other也要是7
4、红色字体一定要注意,同步关键……

posted @ 2015-04-15 15:29  陌上归人的博客  阅读(299)  评论(0编辑  收藏  举报