在我们本地的小型企业网络上,我们需要为仅本地的、仅限 Intranet 的地址运行仅限 Intranet 的 BIND(命名)DNS 服务器。例如,我们在网络上进行了大量的 Web 开发,因此拥有一个 DNS 服务器来管理本地地址(例如:testsite3.local)是有益的。
我们不确定的一方面是,目前所有的商业台式机的 DNS 服务器都设置为75.75.75.75
和75.75.76.76
,它们是 Comcast 互联网 DNS 服务器(Comcast 是我们的商业 ISP)。因此,如果我们将计算机的 DNS 改为指向我们的本地 DNS 服务器,您如何设置绑定以将所有失败的请求“转发”到 Comcast DNS 服务器?
例如,如果网络上的某人试图访问www.google.com
,他们的计算机将首先检查我们的本地 DNS 服务器,该服务器显然没有像google.com
. 那么,要么计算机需要知道与二级或三级 DNS 服务器核对,要么本地 DNS 服务器可以以某种方式从75.75.75.75
或请求信息75.75.76.76
?这就是所谓的区域转移吗?
我知道在每台单独的计算机(在本例中为 OSX)上,我可以手动将主 DNS 设置为本地服务器,然后将二级和三级服务器设置为 Comcast DNS 服务器。但我想看看在服务器端是否有更好、更易于管理的方法来做到这一点。
DNS 客户端不是这样工作的,它们不会“回退”到其他记录。正常运行的 DNS 客户端应从其配置的列表中随机选择一个服务器,以平均分配查询负载,并拥有备用服务器以防万一离线。
如果您需要同时提供内部和外部 DNS 记录,那么您应该将您的客户端计算机配置为仅使用内部DNS 服务器,并将您的内部服务器配置为尝试从外部服务器解析任何非本地定义的 DNS 记录。
这开始于 BIND 中的允许递归指令。请确保您不允许从不在您的网络上的机器进行递归查找,因为这就是DNS 放大攻击的发生方式。