环境:一台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.i686和bind-utils.i686
执行安装命令:
[root@instructor named]# yum install bind
这条命令会根据软件包依赖性将bind.i686、bind-libs.i686、bind-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-file、statistics-file、memstatistics-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
原文地址:http://eric1026.blog.51cto.com/4754515/1429842