我目前已将 Windows DNS 设置为转发到 OpenDNS。但是,OpenDNS 中的所有流量都显示来自本地 Windows DNS 服务器的 IP。有什么方法可以让各个设备查找本地 DNS,如果找不到它们要查找的内容,则查找 OpenDNS。这样 - OpenDNS 就会看到设备本身,而不仅仅是 Windows DNS 服务器。或者有没有办法拥有公共 DNS 和私有 DNS?
我的所有设备都不共享单个 IP - 但开放 DNS 看到 DNS 请求来自我们的本地 DNS 服务器,这是活动目录所必需的。
在此先感谢您的帮助!
答案1
我们偶尔会收到关于如何在客户端级别选择性地查找 DNS 域的问题,但这根本不是客户端的工作。解析器库的设计很笨拙,并期望上游递归器为它们完成繁重的工作。
- 在客户端层面解决此问题的唯一方法是让客户端本身运行 DNS 服务器(不一定是完整的 DNS 服务器,dnsmasq 等是 Unix 领域中常见的解决方案),并让客户端使用 127.0.0.1 作为其 DNS。这在 Windows 服务器上很少发生。
- 递归器 (Windows DNS) 负责防止泄漏到上游转发器 (OpenDNS)。如果请求是针对 AD 管理的 FQDN,则该查询不应命中 OpenDNS。短名称(
foo
与 相对foo.example.com
)将要如果您在客户端上定义的搜索后缀不是您的 AD 基础架构认为自己具有权威的域,则会发生泄漏。
如果这个答案不能让您满意,请更新您的问题以包含客户端使用的搜索域和泄漏到 OpenDNS 的查询示例。