实验一、创建正向解析数据库
实验目的:实现一个域的解析,比如magedu.com,它里面包括例如www、ftp、dbsrv等以magedu.com结尾的FQDN解析成相应的IP地址
实验工具:centos7服务器端、centos6客户端
实验步骤如下:
① yum install bind #安装实验所需DNS服务程序包
systemctl start named #开启DNS服务
[root@centos6 /var/www/html]# vim index.html
<h1>centos6</h1> #为了测试看效果
[root@centos6 /var/www/html]# service httpd start #开启httpd服务
② vim /etc/named.conf #编辑主配置文件
options { // listen-on port 53 { 127.0.0.1; }; #此行注释掉或者写localhost 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; }; #此行注释掉或者写none allow-transfer { 172.17.252.166;}; #允许传输的服务器IP
③ vim /etc/named.rfc1912.zones #编辑主配置文件
zone "magedu.com" { type master; file "magedu.com.zone"; };
④ vim /var/named/magedu.com.zone #编辑解析库文件
[root@centos7 ~]# cat /var/named/magedu.com.zone $TTL 1D @ IN SOA dns1 mail.magedu.com ( 2017101001 1D 1H 1W 3H ) @ NS dns1 @ NS dns2 dns1 A 172.17.0.117 dns2 A 172.17.252.166 www CNAME websrv1 websrv1 A 172.17.252.166
chgrp named /var/named/magedu.com.zone #修改文件属组
⑤ rndc reload #重载主配置文件和区域解析库文件
⑥测试:links www.magedu.com
links websrv1.magedu.com
dig www.magedu.com
结果如下图:
实验二、创建从DNS服务器
实验目的:如果DNS服务器出故障,magedu.com域不能访问,其内www.等网站也不能访问,为了避免这种情况,需要创建一个从服务器。万一主服务器出故障,从服务器能及时替补。
实验工具:centos7-172.17.252.167(主服务器)、centos6-172.17.252.166(从服务器)、centos7-1-172.17.252.168(客户端测试机)
实验步骤如下:
① yum install bind
systemctl start named
② vim /etc/named.conf
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; };
③ vim /etc/named.rfc1912.zones
zone "magedu.com" IN { type slave; masters { 172.17.252.167;}; #主DNS服务器的IP file "slaves/magedu.com.zone.slave"; };
④rndc reload
⑤测试:dig www.magedu.com @172.17.252.166
假如主服务器宕机,使用从服务器解析www.magedu.com
实验三、服务器转发委派的实现
实验目的;比如,客户端利用centos7去访问qq.com时,centos7不按照惯例去询问根,而是去访问centos6.
实验工具:centos7服务器,centos6服务器,centos7-1客户端
实验步骤如下:
①在centos6上新建qq.com域,为了centos7转发过来时能解析到这个地址
[root@centos6 /var/named]# vim /var/named/qq.com.zone
zone "qq.com" IN { type master; file "qq.com.zone"; };
②创建qq.com.zone解析库文件
[root@centos6 /var/named]# vim qq.com.zone
$TTL 1D @ IN SOA dns1 mail ( 2017101001 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS dns1 dns1 A 172.17.252.166 www CNAME websrv websrv A 6.6.6.6
③rndc reload(centos6配置收工)
④centos6自己先测试一下看是否能解析到qq.com
[root@centos6 /var/named]# dig www.qq.com @172.17.252.166
⑤在centos7上设置服务转发
[root@centos7 ~]# vim /etc/named.conf
⑥在centos7上测试解析(这是centos6解析到的结果哦)
[root@centos7 ~]# dig www.qq.com @172.17.252.167
实验注意事项:
关闭dnssec功能:centos6跟centos7相关文件都要把yes改成no
dnssec-enable no;
dnssec-validation no;
实验四、智能DNS服务器的实现
实验目的:当特定区域的客户端向DNS服务器访问时,返回一个特定区域代理服务器的IP地址,例如本实验中的beijing.com域和henan.com域都向magedu.com服务器访问qq.com时,magedu.com会各自返回给同样的数据内容但不同的IP地址,其实就是根据客户端的地址,然后解析返回给它相同的地址段,例如182.168.0.x这个网段去访问,magedu.com会返回给它192.168.0.x这个网段的地址,172.17.252.166.x去访问的话就会返回给它172.17.252.x的这个网段
实验工具:centos7客户端
实验过程:创建henan和beijing两个域;创建其域文件;编写配置文件定义acl和view将域文件和主文件串联起来
实验步骤如下:
①创建henan和beijing两个解析库文件
[root@centos7 /var/named]# vim magedu.com.zone.henan
1 $TTL 1D 2 @ IN SOA dns1 mail.magedu.com ( 3 2017101001 4 1D 5 1H 6 1W 7 3H ) 8 @ NS dns1 9 @ NS dns2 10 dns1 A 192.168.152.167 11 dns2 A 172.17.253.55 12 www CNAME websrv1 13 websrv1 A 192.168.152.167
[root@centos7 /var/named]# vim magedu.com.zone.beijing
1 $TTL 1D 2 @ IN SOA dns1 mail.magedu.com ( 3 2017101001 4 1D 5 1H 6 1W 7 3H ) 8 @ NS dns1 9 @ NS dns2 10 dns1 A 172.17.252.167 11 dns2 A 172.17.252.166 12 www CNAME websrv1 13 websrv1 A 172.17.252.167
②定义acl
[root@centos7 /var/named]# vim /etc/named.conf
11 acl henannet { 12 192.168.152.0/24; 13 192.168.153.0/24; 14 }; 15 acl beijingnet { 16 172.17.252.0/16; 17 172.17.253.0/16; 18 };
③定义view
63 view beijingview { 64 match-clients { beijingnet;}; 65 zone "magedu.com" { 66 type master; 67 file "magedu.com.zone.beijing"; 68 }; 69 zone "." IN { 70 type hint; 71 file "named.ca"; 72 }; 73 }; 74 view henanview { 75 match-clients { henannet;}; 76 include "/etc/named.rfc1912.zones"; 77 zone "." IN { 78 type hint; 79 file "named.ca"; 80 }; 81 };
④测试结果如下图所示
打完收工,谢谢浏览,欢迎评论!