DNS之BIND使用小结(Forward转发)

 

之前详细介绍了DNS及其在linux下的部署过程,今天再说下DNS的BIND高级特性-forwarder转发功能。比如下面一个案例:
1)已经在测试环境下部署了两台内网DNS环境,DNS的zone域名为kevin.cn:http://www.cnblogs.com/kevingrace/p/5570312.html
2)测试机器的DNS地址已经调整为这两台DNS地址,所以测试机访问kevin.cn域名是没有问题的。
由于业务需求,需要测试机器能访问grace.cn域名(grace.cn域名是使用别的DNS地址解析的),这就用到了DNS的BIND中的forwarder转发功能了。
通过BIND的forwarder转发功能,将测试机访问的非kevin.cn的域名都转向forwarder指定的DNS地址上。

forwarder转发功能只需要在named.conf中配置即可:
[root@uatdns01 ~]# cat /etc/named/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;
              forward first;
              forwarders {            #即访问非kevin.cn域名时将解析转发到这几个DNS地址(分别为阿里的DNS、google的DNS)上进行解析。
                     223.5.5.5;          #注意这里转发的是DNS地址,没有指定DNS转发域名。
                     223.6.6.6;
                     8.8.8.8;
                     8.8.4.4;
               };
               };

logging {
             channel default_debug {
             file "data/named.run";
             severity dynamic;
             };
};

zone "." {
              type hint;
              file "named.ca";
};

zone "kevin.cn" {
              type master;
              file "kevin.cn_zone";
};
zone "51.168.192.in-addr.arpa" {
              type master;
              file "192.168.51.zone";
};

zone "50.168.192.in-addr.arpa" {
              type master;
              file "192.168.50.zone";
};

zone "104.168.192.in-addr.arpa" {
              type master;
              file "192.168.104.zone";
};
zone "grace.cn" {                       #访问grace.cn域名时,将解析请求转到192.168.51.39(即grace.cn域名的DNS地址),注意这个不能写在上面的forwarder处,否则转发无效!
              type forward;                #注意这里转发配置中制定了转发的域名,即forwad转发区(forward zone)设置,这是bind9之后的新特性。
              forwarders { 192.168.51.39; };
};

========================================================================
尝试了下,无法在一个named.conf里同时配置两个或多个域的zone(即正向解析的zone),配置好并重启named服务器后,多出的那个域名解析无效。
比如内网有两个域名:kevin.cn和grace.cn,要做这两个域名的DNS解析环境,实现方案如下:

1)分别针对kevin.cn和grace.cn部署两套DNS环境
2)在其中一个域名的DNS环境中使用forwadr转发,比如在kevin.cn域名的named.conf配置中添加:
     zone "grace.cn" {                       
              type forward;                
              forwarders { 192.168.51.39; };           # 该ip为grace.cn域名的DNS服务器地址
     };
3)将客户机的DNS(/etc/resolv.conf)配置成kevin.cn域名的DNS地址,这样该客户机对于kevin.cn和grace.cn域名都可以解析。

&#

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值