配置本地配置的 DNS 以使用外部 DNS 进行外部寻址

配置本地配置的 DNS 以使用外部 DNS 进行外部寻址

我已经玩了一周了,有点放弃了。我被分配了一项任务,在系统上配置本地设置的 DNS,并将其重定向到外部 DNS 以解析 google.com 等地址。

因此,为了澄清:

System DNS[127.0.0.1] -x-> Intranet DNS[192.168.1.123] ---> WWW

我可以做 adig @192.168.1.123 google.com它会返回一个答案。
但执行 adig @127.0.0.1 google.com返回 0 个答案。

使用 Centos 6.5,并使用 named 和 rpcbind,如何配置系统 DNS 以指向外部 DNS 来查找答案。我应该如何配置/etc/named.conf /var/named/site1.foo.com.zone和任何其他文件来进行此重定向?作为主人,作为奴隶,做一个或做另一个有什么好处,我有选择吗?

提到的两个文件都可以在目录中配置/var/named/chroot/...

我更愿意保留系统 DNS,以防某些主机尚未删除到文件中/etc/hosts

以下是我的目的 /var/named/chroot/var/named/db.site.foo.com

site1.foo.com                  IN SOA sm1.site1.foo.com. root.site1.foo.com. (
                                2010060101      ; Serial YYYYMMDDnn
                                86400           ; Refresh (1 day)
                                7200            ; Retry (2 hours)
                                3600000         ; Expire (5 weeks 6 days 16 hours)
                                172800          ; Minimum (2 days)
)
                                NS              sm1.site1.foo.com.
                                NS              slavedns.site1.foo.com
                                A               127.0.0.1
                                A               192.168.1.123
$ORIGIN site1.foo.com
$TTL 172800 ; 2 days

sm1                             A               127.0.0.1
slavedns                        A               192.168.1.123

被以下区域配置引用/var/named/chroot/etc/named.conf

zone "site1.foo.com" {
     type master;
     file "db.site1.foo.com";
};

我如何完成这一点的扩展以使 127.0.0.1(本地主机)的 DNS 到达 192.168.1.123 以获得外部答案?我尝试了多种方法,现在我确信我只是让自己更加困惑。除了总体基本概念之外,我对 DNS 还很陌生。

答案1

除了options { recursion true; }MAP 提到的(启用递归所需的)之外,您还可以forwardersnamed.conf文件中添加可选规则,以告知bind使用哪个“父”名称服务器来解析它不知道的域名。

例如

forwarders {
  x.x.x.x; // your ISP's nameserver ip-address
  8.8.8.8; // google's public DNS resolver
};

相关内容