您的位置:首页 > 其它

BIND服务基础及DNS Master服务器配置步骤

2012-11-27 20:31 543 查看
         BIND乃现今使用最为广泛的DNS服务器软件
         BIND服务的名称谓之“named”
         BIND配置文件保存在两个主要位置
           ▲ BIND服务主配置文件:/etc/named.conf
           ▲ zone文件:         /var/named/
         chroot是通过将相关文件封装在一个伪根目录内,以达到安全防卫的目的,一旦该程序被攻破,
         将只能访问伪根目录内的内容,而不是真实的根目录
         通过:
             yum install -y bind bind-chroot bind-utils
             进行BIND安装
         默认使用53号端口
         如果安装了bind-chroot,BIND会被封装在一个伪根目录内(/var/named/chroot/),配置文件的位置则变为:
           ▲ BIND服务主配置文件:/var/named/chroot/etc/named.conf
           ▲ zone文件:         /var/named/chroot/var/named/
           原来在/etc 和/var的内的配置信息会被完全移到伪根内
         BIND在安装后没有预置的配置文件,但在BIND的文档文件夹内(/usr/share/doc/bind-*),BIND为我们提供了配置文件模板
         我们可以直接拷贝过来:
           cp -rv /usr/share/doc/bind-9.3.6/sample/etc/*  /var/named/chroot/etc
           cp -rv /usr/share/doc/bind-9.3.6/sample/var/*  /var/named/chroot/var
         最小化的BIND服务主配置文件内容如下:[root@even etc]# cat named.conf
options
{
directory "/var/named";
listien-on port 53 {127.0.0.1;};
};
         配置域主服务器(Master)
        
         ① --在BIND的主配置文件中添加域example.com的定义
         定义:
                设置指向每个域名和IP地址映射信息的文件

         ● 配置文件位置
            /var/named/chroot/etc/named.conf
         ● 在主配置文件中添加一行域的zone定义:
           zone "example.com"{
             type master;
             file "example.com.zone";
                             };
                            
         ② --为定义的域添加zone配置文件
         定义:
                
                 用户配置的域名解析文件:也称为区文件,若当前DNS服务器需要解析多个域名,则需要设置多个域名解析文件。若需要反向解析,还要设置对应的反向解析文件。

         ● zone文件的位置
            /var/named/chroot/var/named/example.com.zone
         ● zone文件内容
            zone文件内容比较复杂,手工输入极易出错,所以,
            一般使用默认的named.localhost配置文件作为模板
            cp named.localhost或者localdomain.zone  example.com.zone
            然后,添加资源记录(RR)
                      IN MX  10  mail.example.com.
            www  IN  A  192.168.1.110
            mail   IN  A  192.168.1.126
       
            并且:
                ★ 确保这些配置文件都有读权限:ll
                ★ selinux是关着:getenforce
       
         ③ --启动BIND服务或刷新配置
           service named start
           service named reload
          
         ④ --用本机作测试:将本机的DNS配置指向本机
           /etc/resolv.conf
           nameserver 127.0.0.1
          
         ⑤ --使用host或者dig命令验证DNS配置[root@even named]# dig -t mx example.com

; <<>> DiG 9.3.6-P1-RedHat-9.3.6-20.P1.el5 <<>> -t mx example.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65191
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 3

;; QUESTION SECTION:
;example.com. IN MX

;; ANSWER SECTION:
example.com. 86400 IN MX 10 mail.example.com.

;; AUTHORITY SECTION:
example.com. 86400 IN NS example.com.

;; ADDITIONAL SECTION:
mail.example.com. 86400 IN A 192.168.1.126
example.com. 86400 IN A 127.0.0.1
example.com. 86400 IN AAAA ::1

;; Query time: 2 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Tue Nov 27 20:13:03 2012
;; MSG SIZE rcvd: 124

[root@even named]# host www.example.com
www.example.com has address 192.168.1.110
         错误排查
        
         DNS配置语法晦涩,容易出现配置错误
         BIND为我们提供了两个语法检查工具:
         ▼ named-checkconf可以查看BIND主配置文件的错误:
            named-checkconf /var/named/chroot/etc/named.conf
         ▼ named-checkzone可以查看zone文件的错误:
            named-checkzone example.com /var/named/chroot/var/named/example.com.zone
            通常,BIND配置要么语法上出错、要么权限上有错
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: