问题:
LAN 客户端计算机 ping remote.mydomain.com,它解析为我们的静态 WAN IP 地址。它应该解析为我们服务器的本地 LAN IP 地址。
细节: 我们总共有一台服务器,它在一些相当快的硬件上运行 SBS 2008(如果需要可以描述它)。我输入了一些本地 DNS 区域 A 记录,以便用户无论在 LAN 上还是在 LAN 外都可以无缝使用 Outlook Web Access。这些 DNS 记录包括 remote.mydomain.com 和 outlook.mydomain.com。两个域不是必需的,但后者更容易让用户在访问 OWA 时记住。
我还配置了我们的 SBS 2008 DHCP 服务器,以便客户端计算机获得三个 DNS 服务器 IP 地址,如下所示:
192.168.1.10 (our SBS server)
208.67.222.222 (OpenDNS)
208.67.220.200 (OpenDNS)
我这样配置的原因是,当我们的服务器无法运行(这种情况很少见)时,客户端仍然能够访问互联网。
我认为问题在于 SBS 2008 对 DNS 查询的响应速度不够快,因此客户端转而查询 OpenDNS,而 OpenDNS 只会在客户端位于 LAN 之外时才返回正确的地址。
仅供参考,我们正在使用 SonicWall TZ-210 路由器。
我正在寻找任何建议,关于如何确保 LAN 客户端计算机可以访问我们 LAN 上的 OWA,而无需禁用我通过 DHCP 配置的“备份”DNS 服务器地址。
答案1
“备用” DNS 服务器地址不是一个好主意,也是问题的根源。您可以玩弄数据包过滤防火墙来尝试“解决问题”,但最好只使用域控制器作为客户端的 DNS 服务器。
一般情况下,您不应该在无法解析 AD 域的 DNS 记录的 Active Directory 客户端上指定 DNS 服务器。在某些情况下,使用此类配置会导致登录、组策略和/或域 DFS 根目录的性能不确定。客户端严重依赖 DNS 来做出与 Active Directory 合作的“正确决策”。
只为您的客户端指定 AD DNS 服务器,一切就都好了。如果您担心 DNS “宕机”,那么请启动辅助域控制器并在其上安装 DNS 服务器角色。(无论如何,拥有第二个 DC 是一种廉价的保险政策,而且不是坏事。但根据我的经验,SBS 服务器的 DNS “宕机”可能意味着您遇到的问题比客户端能够浏览网站要大得多。)
答案2
由于您除了使用内部 DNS 服务器外还使用外部 DNS 服务器,因此客户端可能会决定将 DNS 查询循环到所有配置的服务器。当您尝试解析 mydomain.com 时,这些外部 DNS 服务器会提供您的 WAN 链接作为响应。然后这些本地计算机会缓存响应。
我认为在服务器出现故障的情况下拥有外部 DNS 服务器是一个好主意,但实际上,如果服务器出现故障,你面临的问题会比每个人是否都能访问互联网更大。
答案3
从我对 Windows 7 机器的测试来看,如果首选名称服务器在 1 秒内未返回响应,它将转到下一个。它不会重试未收到响应的服务器,而是坚持使用收到响应的服务器。因此,拥有这种拆分 DNS 只会导致问题,因为如果您的 LAN 系统故障转移到公共 DNS 服务器,您将很难将它们恢复到 LAN DNS。如果您真的担心单点故障,请获取另一个机器在内部执行 DNS。这可以通过运行 BIND 作为从属的廉价 Linux 机器轻松完成。