码迷,mamicode.com
首页 > 其他好文 > 详细

DNS服务器之一:主服务器正反解实现

时间:2014-06-24 16:18:56      阅读:268      评论:0      收藏:0      [点我收藏+]

标签:dns   bind   服务器   

环境:一台window客户端 192.168.1.100

     虚拟机上两台centOS:主DNS  192.168.1.103

                           DNS  192.168.1.104

DNS服务器    

一、软件安装

查找与bind有关的软件包

 

[root@instructor named]# yum list all | grep"^bind"
bind.i686                         32:9.8.2-0.23.rc1.el6_5.1        
bind-libs.i686                    32:9.8.2-0.23.rc1.el6_5.1          
bind-utils.i686                   32:9.8.2-0.23.rc1.el6_5.1          
bind-chroot.i686                   32:9.8.2-0.23.rc1.el6_5.1            
bind-devel.i686                   32:9.8.2-0.23.rc1.el6_5.1            
bind-dyndb-ldap.i686               2.3-5.el6                              
bind-sdb.i686                     32:9.8.2-0.23.rc1.el6_5.1

  

作为基本的DNS服务器,只需要安装bind.i686bind-utils.i686

执行安装命令:

[root@instructor named]# yum install bind

   

这条命令会根据软件包依赖性将bind.i686bind-libs.i686bind-utils.i686三个包一起安装

安装完成后执行:rpm -qc bind命令查看相关信息

[root@instructor named]# rpm -qc bind
/etc/logrotate.d/named
/etc/named.conf         DNS的主配置文件
/etc/named.iscdlv.key
/etc/named.rfc1912.zones  zone的配置文件
/etc/named.root.key      
/etc/rndc.conf           
/etc/rndc.key
/etc/sysconfig/named
/var/named/named.ca
/var/named/named.empty
/var/named/named.localhost
/var/named/named.loopback

我们主要通过配置/etc/named.conf主配置文件和/etc/named.rfc1912.zones文件定义我们所需要的域

 

二、修改/etc/named.conf主配置文件

我们先查看一下主配置文件的内容:

[root@instructor named]# cat/etc/named.conf
//
// named.conf
//
// Provided by Red Hat bind package toconfigure the ISC BIND named(8) DNS
// server as a caching only nameserver (asa localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ forexample named configuration files.
//
 
options {
      listen-on port 53 {127.0.0.1; };
      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     { localhost; };
        recursion yes;
 
       dnssec-enable yes;
       dnssec-validation yes;
       dnssec-lookaside auto;
 
       /* 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";

我们需要关注的是“option”字段和“zone”字段

option中:

listen-on port 53 {127.0.0.1; }

表示监听本地主机的53号端口,即只有本机可对DNS服务进行查询,显然不合理,我们可以将127.0.0.1改为any,或者将其使用“//”注释掉,因为默认是对本机所有接口进行监听。

 

  listen-on-v6port 53 { ::1; }

表示对IPv6地址进行监听,暂时不需要,也可将其注释掉。

 

  directory       "/var/named"

该目录用来存放正、反解区域文件

 

  dump-filestatistics-filememstatistics-file

这三个文件与统计信息有关,很少用到

 

  allow-query

这是针对客户端的设置,表示哪些主机可以对DNS服务器提出查询请求。默认是对所有用户放行,所以这个也可以注释掉

 

zone "."

  这是一个指向顶级根服务器的区域

 

三、正解数据库文件的设置

[root@instructor named]# vim/etc/named.rfc1912.zones
在文件尾部新增一个zone
zone "test.com" IN {           这里的域名根据自己的需求填写
       type master;         type有master、slave、forward
       file "test.com.zone";   指定区域文件
};

注意后面的“;”不能少。

接下来,我们在/var/named/目录下创建正解区域文件

[root@instructor named]# cd /var/named
[root@instructor named]# vim test.com.zone
$TTL   600
$ORIGIN test.com.
@      IN      SOA     dns.test.com.   admin.test.com. (
                        2014061601       //序列号
                        2H              //更新频率
                        10M            //失败重新尝试时间
                        7D              //失效时间
                        6H)             //缓存时间
       IN      NS      dns.test.com.     //指出DNS服务器,后面必须要有A记录
       IN      MX   10 mail.test.com.    //MX邮箱服务器,需要正、反解
dns    IN      A       192.168.1.103    //DNS的A记录
mail   IN      A       192.168.1.102
www    IN      A       192.168.1.100
www    IN      A       192.168.1.101
ftp    IN      CNAME   www

注:
1.每个区域文件中必须要有一个NS记录,用来告知到某台机器上查询该区域信息
2.上面的NS的值dns是省略写法,完整写法可以是 dns.test.com.(后面的“.”不可省略)
3.zone的记录开头如果省略,表示和上面的一条zone_name相同
4.邮件中10为优先级,另外邮件记录中的@必须要用“.”代替
5.可以为同一个host定义两个A记录,实现了负载均衡的作用,默认采用轮训机制
6.CNAME就是别名设置

修改正解区域权限:

[root@instructor named]# chmod 640 test.com.zone

修改属组信息:

[root@instructor named]# chown :named test.com.zone

检查主配置文件:

[root@instructor named]# named-checkconf

检查区域配置:

[root@instructor named]# named-checkzone "test.com"/var/named/test.com.zone
zone test.com/IN: loaded serial 2014061601
OK

 

四、反解数据库文件的设置

[root@instructor named]# vim/etc/named.rfc1912.zones
在文件尾部新增一个zone
zone "1.168.192.in-addr.arpa" IN{
       type master;
       file "192.168.1.zone";
};

接下来,我们在/var/named/目录下创建反解区域文件

[root@instructor named]# cd /var/named
[root@instructor named]# vim 192.168.1.zone
$TTL   600
@      IN      SOA     dns.test.com.   admin.test.com. (
                        2014061601
                        2H
                        10M
                        7D
                        6H)
       IN      NS      dns.test.com.
103    IN      PTR     dns.test.com.
100    IN      PTR     www.test.com.
101    IN      PTR     www.test.com.

修改反解区域权限:

[root@instructor named]# chmod 640 192.168.1.zone

修改属组信息:

[root@instructor named]# chown :named 192.168.1.zone

检查主配置文件:

[root@instructor named]# named-checkconf

检查区域配置:

[root@instructor named]# named-checkzone"1.168.192.in-addr.arpa " /var/named/192.168.1.zone
zone 1.168.192.in-addr.arpa\032/IN: loaded serial 2014061601
OK

 

 

 


 

 

 


DNS服务器之一:主服务器正反解实现,布布扣,bubuko.com

DNS服务器之一:主服务器正反解实现

标签:dns   bind   服务器   

原文地址:http://eric1026.blog.51cto.com/4754515/1429842

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!