我有 Ubuntu 16 LTS
bind 的默认配置中的 0.in-addr.arpa 和 255.in-addr.arpa 区域有什么用途?( named.conf.default-zones
)
我在这里问是因为我认为这些区域文件在各种 GNU/Linux 发行版上的 bind 软件包中是通用的,而不是 Ubuntu 特定的。
答案1
BIND 中默认本地区域的目的是阻止对这些 IP 范围的查询泄漏到全球互联网上,并减少根名称服务器上的负载。RFC 6303 “本地服务的 DNS 区域”。
从该 RFC 的介绍中:
提出此建议是因为数据显示,尽管有限制这些命名空间的指示,但查询仍然大量泄漏,因此有必要部署牺牲性名称服务器,以保护
这些区域的直接父名称服务器免受过多、无意的查询负载 [AS112] [RFC6304] [RFC6305]。除非采取此处概述的步骤,否则查询负载将继续增加。此外,如果客户端的查询位于配置不当的防火墙后面,这些防火墙允许对这些命名空间发出查询,但会丢弃响应,这会给根服务器带来很大的负载(配置了正向区域,但没有配置反向区域)。它们还会给根服务器运营商带来运营负担,因为他们必须回答有关根服务器为何“攻击”这些客户端的询问。
这应该被视为权威参考,尤其是因为该 RFC 是由 BIND 的主要开发人员之一马克·安德鲁斯 (Mark Andrews) 编写的。
另请参阅本地服务区域的 IANA 注册表,其中包含应以此方式提供服务的所有(反向)区域的列表。
自 2011 年发布 BIND 9.9 以来,BIND9 会在启动时自动创建默认本地区域,除非使用文件empty-zones-enable
中的标志明确关闭named.conf
。
IANA 注册表由 ISC 进行跟踪,并在新条目出现时将其添加到当前 BIND 源中。
答案2
这来自这里(MS 页面,但仍然相关):
反向查找区域使 DNS 服务器具有权威性,即提前知道答案并立即响应最常见的名称查询,从而消除不必要的递归查询。根据相关的征求意见稿 (RFC),默认情况下,DNS 服务器对三个反向查找区域具有权威性:
0.in-addr.arpa (0.0.0.0) 127.in-addr.arpa (127.0.0.1 - loopback) 255.in-addr.arpa (255. 255. 255. 255 - broadcast)
换句话说,DNS 服务器不会向基于 Internet 的 DNS 服务器查询这些地址(因为它们都是本地地址)。