[root@ns1 ~]# yum install bind [root@ns2 ~]# yum install bind
# 编辑named主区域配置文件,注释不需要配置 # 在/etc/named.rfc1912.zones文件中添加区域配置信息 [root@ns1 ~]# tail -8 /etc/named.rfc1912.zones zone "test.com" IN { type master; file "test.com.zone"; }; zone "21.16.172.in-addr-arpa" IN { type master; file "172.16.21.zone"; }; #编辑test.com及"21.16.172.in-addr-arpa"的区域配置文件,内容如下 [root@ns1 ~]# cat /var/named/test.com.zone $TTL 3600 @IN SOA test.com. admin.test.com. ( 2014080501 3H 15M 5D 1D) @IN NSns1.test.com. IN MX 10mail.test.com. ns1IN A172.16.21.1 mailIN A172.16.21.100 wwwIN A172.16.21.10 [root@ns1 ~]# cat /var/named/172.16.21.zone $TTL 3600 @IN SOA test.com. admin.test.com. ( 2014080501 3H 15M 5D 1D) @IN NSns1.test.com. IN MX 10 mail.test.com. 1IN PTRns1.test.com. 100IN PTRmail.test.com 10IN PTRwww.test.com
验证:
#编辑主配置文件,将不需要选项加以注释 #编辑/etc/named.rfc1912.zones,添加如下内容 [root@ns2 named]# tail -5 /etc/named.rfc1912.zones zone "test.com" IN { type slave; file "slave/test.com.zone"; masters { 172.16.21.1; }; }; #在ns1服务器上编辑/etc/named.rfc1912.zones文件,在区域test.com的配置中添加以下内容,用于支持区域传送 allow-transfer { 172.16.21.2; }; #在ns1服务器上的test.com.zone配置文件中把ns2添加为DNS服务器 @ IN NS ns2.test.com. ns2 IN A 172.16.21.2
验证:
#在ns1的/var/named/test.com.zone文件中添加ns的胶水记录 tech IN NS ns.tech.test.com. ns.tech IN A 172.16.21.2 #在ns2的/etc/named.rfc1912.zones中添加tech.test.com区域,内容如下 [root@ns2 named]# tail -5 /etc/named.rfc1912.zones zone "tech.test.com" IN { type master; file "tech.test.com.zone"; }; #编辑tech.test.com.zone区域配置文件 [root@ns2 named]# vim tech.test.com.zone $TTL 3600 @ IN SOA tech.test.com. admin.tech.test.com. ( 2014080501 ; serial 3H ; refresh 15M ; retry 5D ; expire 1D ) ; minimum IN NS ns ns IN A 172.16.21.2 www IN A 172.16.21.22 #修改tech.test.com.zone 属组为named chgrp named tech.test.com.zone
#在实验过程当中遇到一个问题,父域的DNS总是无法解析子域中的名称,错误信息如下
#Aug 4 22:09:15 wh1 named[3294]: error (no valid DS) resolving ‘ns.tech.test.com/A/IN‘: 172.16.21.2#53
经过各种google,百度,终于找到解决方法
#####################################
dnssec-enable no;
dnssec-validation no;
#####################################
验证:
#现在虽然使用父域的DNS可以解析到子域的服务器地址,但是子域却会去根下查找其父域的域名,由于没有在互联网上注册,所以肯定无法查找到,所以需要在子域上配置子域转发 #配置子域转发,在/etc/named.rfc1912.zones中添加如下内容 [root@ns2 named]# tail -5 /etc/named.rfc1912.zones zone "test.com" IN { type forward; forward only; forwarders { 172.16.21.1; }; }; #重启服务
验证:
#修改配置文件,将原有的区域配置均移动到view neiwang { }; 中,并在其中添加: match-clients { 172.16.0.0/16; }; #并在下方再定义一个新的视图,内容如下: view waiwang { match-clients { any; }; zone "test.com" IN { type master; file "test.com.zone.waiwang"; allow-transfer { any; }; }; };
验证:
当客户端IP为172网段时,结果如下:
将客户端IP改为192.168网段,再进行解析,结果如下:
可见,视图功能已经配置成功,当我们在双线接入服务器以及当服务器面向内网及外网时,也可以减轻DNS服务器为外网解析其他域IP地址而消耗多余的资源.
本文出自 “淡淡” 博客,请务必保留此出处http://dddbk.blog.51cto.com/6837943/1536557
原文地址:http://dddbk.blog.51cto.com/6837943/1536557