这是我的主机名的区域:
host.mydomain.com IN SOA ns1.mydomain.com
host.mydomain.com IN NS ns1.mydomain.com
host.mydomain.com IN NS ns2.mydomain.com
host.mydomain.com IN A 111.111.111.111
localhost IN A 127.0.01
这是 NS1 名称服务器的区域:
ns1.mydomain.com IN SOA ns1.mydomain.com
ns1.mydomain.com IN NS ns1.mydomain.com
ns1.mydomain.com IN NS ns2.mydomain.com
ns1.mydomain.com IN A 222.222.222.222
localhost IN A 127.0.01
这是 NS2 名称服务器的区域:
ns2.mydomain.com IN SOA ns1.mydomain.com
ns2.mydomain.com IN NS ns1.mydomain.com
ns2.mydomain.com IN NS ns2.mydomain.com
ns2.mydomain.com IN A 333.333.333.333
localhost IN A 127.0.01
有三件事我不太明白。
- 为什么每个区域都有一个指向 ns1.mydomain.com 的 SOA 记录?
- 为什么 NS1 Zone 具有指向 ns2.mydomain.com 的 NS 记录,而 NS2 Zone 具有指向 ns1.mydomain.com 的 NS 记录?
- 为什么所有区域都使用本地主机?
答案1
第一个答案:
每我对您最近关于 DNS 的另一个问题的回答,如您所知,您需要两台 DNS 服务器以实现冗余。但一台必须始终充当“主服务器”,并且(如果配置正确),第二台名称服务器应从主服务器复制数据。
也就是说,两个服务器中的 SOA(授权起始点)值相同,因为 SOA 记录中的一个字段是计算机名称,或“作为此区域原始或主要数据来源的名称服务器的 FQDN”(http://help.dnsmadeeasy.com/records/soa-record/)。
您只需要更改主服务器(您的主要数据源)上的 DNS 记录,该记录会被复制到其他冗余名称服务器。
第二个答案:
简短回答:为了冗余目的。详细回答:为了冗余目的。如果 NS1 暂时停机,您不希望缓存服务器突然“忘记”NS1,因为 NS2 没有它的记录,反之亦然。两台服务器“不加区分地”提供 DNS 数据 - 它们的区域文件需要具有完全相同的数据,这才有意义,因为您的从属服务器只是从主服务器提取数据 - 即,正如我之前所说,您永远不必更新 NS2 上的数据(区域文件),因为它应该从 NS1 复制。
第三个答案
想一想。为什么不呢?认真的说。你的服务器需要能够与自己对话。
如果配置正确,这应该不是问题。对 localhost 的请求应该始终有效。但这只是保险措施(尽管如果您删除它也不会造成大问题)。其目的是防止您的服务器用于与自身通信的任何请求“泄露”到互联网上。我的建议:保留它。
另外,请交叉引用类似问题的答案:https://serverfault.com/a/120785/57332
但认真地说:根据你之前的问题和这个问题,我仍然不建议你维护自己的 DNS 服务器。请使用你的注册商和/或托管服务提供商提供的服务器。