我想foo.
为我的专用网络设置一个新的 TLD ( ),以便我可以托管一些可从网络内部访问的子域。为此,我为foo.
.为此,我创建了一个foo-zonedb.rr
包含以下记录的区域文件:
$ORIGIN foo.
$TTL 100
@ IN SOA ns1.tld.foo. hostmaster.tld.foo (
2012030701
900
300
300
600
)
@ 300 IN NS ns1.tld.foo.
@ 300 IN A 172.16.143.197
ns1.tld.foo. 300 IN A 172.16.143.197
我还添加了以下条目/etc/named.conf
zone "foo." {
type master;
file "foo-zonedb.rr";
notify explicit;
};
现在假设网络上的每台计算机都用作172.16.1.1
其 DNS 服务器。我应该进行什么配置172.16.1.1
才能将foo.
域的 DNS 请求重定向到根 DNS 服务器?
答案1
type master;
做你想做的事。如果172.16.1.1
是权威服务器,则请求不会发送到根服务器。不存在的条目将导致 NXDOMAIN 状态。
如果你想停下来全部如果查询转发到根服务器,那么您应该关闭递归。看:http://www.zytrax.com/books/dns/ch6/#authoritative
答案2
您可以将客户端配置为使用 172.16.100.1 作为其主 DNS 服务器。
使用绑定到 DNS 服务器 172.16.100.1 上的 172.16.1.1 中的转发选项。
options {
[Your other options here]
forwarders {172.16.1.1;};
}
将返回第一个权威响应(获胜)。所以你的客户会抬头看
某事.foo
您的 DNS 服务器将提供权威响应(有效记录或 NXDOMAIN)。如果您的客户端搜索 www.google.com - 您的 DNS 服务器无法提供响应,因此会将请求转发到 172.16.1.1。
我对内部网络上的所有内容都使用自定义 TLD。通过上述配置,它可以正常工作,并且仍然允许通过转发选项进行公共 DNS 解析。