你好
我是你们的雨嘉叔

06-Linux中DNS详解(三)

接“05-Linux中DNS详解(二)


七、配置DNS转发域名解析请求到指定的DNS服务器


A.正常转发


0、关于forward


forward指令用于设置DNS转发的工作方式,分为forward first和forward only;
forward first设置优先使用forwarders DNS服务器做域名解析,如果查询不到再使用本地DNS服务器做域名解析。
forward only设置只使用forwarders DNS服务器做域名解析,如果查询不到则返回DNS客户端查询失败。


1、可以在Windows Server上搭建一个DNS服务器,此DNS服务器的IP是192.168.80.111,在建立一个正向查找区(abc.com)并添加A记录(www),并指向IP为12.1.1.12(此地址可以不真实存在)


2、编辑配置文件


vi /etc/named.conf


3、在options添加以下配置


[named.conf]
options {
listen-on port 53 { any; };
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 { 192.168.80.0/24; 192.168.70.0/24; };
recursion yes;
forward only; #可替换成forward first
forwarders{ 192.168.80.111; };

dnssec-enable no;
dnssec-validation no;
dnssec-lookaside no;


4、重启服务,使新配置生效


service named restart


5、验证


host www.abc.com 192.168.80.100 #forward only


Using domain server:
Name: 192.168.80.100
Address: 192.168.80.100#53
Aliases:

www.abc.com has address 12.1.1.12


host edu.51cto.com 192.168.80.100 #forward only


Using domain server:
Name: 192.168.80.100
Address: 192.168.80.100#53
Aliases:

edu.51cto.com is an alias for XXX.XXX.com has address XXX.XXX.XXX.XXX


6、解析正常!(也可以在WinServer中查看缓存来判断解析是否正确)


B、条件转发


1、编辑配置文件


vi /etc/named.conf


2、注释或删除掉之前配置转发的条目


3、添加并配置区域


vi /etc/named.rfc1912.zones


[named.rfc1912.zones]
zone “abc.com.” {
type forward; #区域类型:转发
forwarders { 192.168.80.111;}; #指向要转发的服务器
};


4、保存并退出,重启服务


5、验证
host www.abc.com 192.168.80.100 #如果解析其他地址的域名,则在WinServer的DNS缓存记录中查询不到此条目


Using domain server:
Name: 192.168.80.100
Address: 192.168.80.100#53
Aliases:

www.abc.com has address 12.1.1.12


八、域名解析委派


0、DNS委派和转发的区别


DNS委派,将相关区域解析权限下放给某一台DNS服务器在委派服务器上只存储一条委派方与被委派方的记录。
DNS转发,即当DNS服务器不能解析客户端的请求时,如果设置了转发,刚将其转到其上游(需要设置)DNS服务器进行解析。


1、实验环境
需要两台DNS服务器,一个为zhangyujia.cn(192.168.80.100),另外一个为cn(192.168.80.200)让cn这个服务器委派给zhangyujia.cn


2、给cn(192.168.80.200)安装DNS服务(具体安装方法略,参见第二篇文章)


3、停止iptables防火墙


service iptables stop


4、修改配置文件,保存退出并重启服务


vi /etc/named.conf


[named.conf]
options {
listen-on port 53 { any; }; #修改
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 { any; }; #修改
recursion yes;

dnssec-enable no; #修改
dnssec-validation no; #修改
dnssec-lookaside no; #修改,新版本可能会没有这条


5、创建cn区域,保存并退出


vi /etc/named.rfc1912.zones


[named.rfc1912.zones]
zone “cn” IN {
type master; #类型:主区域
file “named.cn”;
allow-update { none; }; #是否允许动态更新(不允许)
};


6、创建区域文件
vi /var/named/named.cn


[named.cn]
$TTL 1D
@ IN SOA centos6.cn. zhangyj_public.163.com. (
0 ;serial
1D ;refresh
1H ;retry
1W ;expire
3H ;minimum
);
IN NS centos6.cn.

zhangyujia IN NS webserver.cn. #委派

centos6 IN A 192.168.80.200
webserver IN A 192.168.80.100


7、保存并退出,重启服务


:wq
service named restart


8、验证


host www.zhangyujia.cn 192.168.80.200


Using domain server:
Name: 192.168.80.200
Address: 192.168.80.200#53
Aliases:

www.zhangyujia.cn has address 192.168.80.100 #解析成功,如果试验其他.cn域名就会解析不到,如果试验.com、.net等域名直接解析到外网
(未完待续……)


欢迎关注
新浪微博:https://weibo.com/yougazhang0506
微信公众平台:张雨嘉


我的网站:https://www.zhangyujia.cn
51CTO博客:http://blog.51cto.com/11099293

赞(0)
未经允许不得转载:嘉叔的博客 » 06-Linux中DNS详解(三)
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址