绑定:如何添加具有覆盖的转发区域?

绑定:如何添加具有覆盖的转发区域?

在我的内部网 DNS 服务器上,想要覆盖一些地址。

因此基本上,它应该转发所有解析请求对于区域 mydomain.tld,这些不在“/etc/named/mydoamin.tld”文件中的真实 DNS 服务器...

zone "mydomain.tld" IN {
    type master;
    file "/etc/named/mydomain.tld";
    forwarders { 1.1.1.1; 2.2.2.2; 3.3.3.3; };
    forward only;
};

如何才能做到这一点?


澄清:

例如,在文件“/etc/named/mydomain.tld”中,有几条记录:

abc.mydomain.tld.      IN    A 192.168.1.2
def.mydomain.tld.      IN    A 192.168.1.3
ghi.mydomain.tld.      IN    A 192.168.1.4
jkl.mydomain.tld.      IN    A 192.168.1.5

并且 - 例如 - 这些记录(不在文件“/etc/named/mydomain.tld”中,而是)在官方名称服务器中:

abc.mydomain.tld.      IN    A 123.123.123.123
www.mydomain.tld.      IN    A 123.123.123.123
mail.mydomain.tld.     IN    A 123.123.123.123

因此,当内部网中的客户端询问内部网名称服务器时,名称服务器应首先查看其定义,然后在条目未指定的情况下,询问官方名称服务器。

如果客户端请求 abc.mydomain.tld,则内联网名称服务器应返回 192.168.1.2...

如果客户端请求 www.mydomain.tld,则内联网名称服务器应返回 123.123.123.123...

答案1

您无法执行此操作。每个 DNS 服务器必须包含完全的DNS 区域的副本,或者将整个 DNS 区域转发到其他服务器。您不能将零碎部分放在不同的服务器上(除非您创建子区域并使用 NS 记录进行委托,但我离题了)。

因此,要么使您的互联网和内联网服务器相同,要么将一个服务器转发到另一个,如下所示:

zone "mydomain.tld" IN {
    type forward;
    forwarders { your-other-server-here; };
};

相关内容