我的 AD 设置中有一个内部 DNS。我有一个用于公共资源的托管 DNS(通常位于某个数据中心)
有时在我们的内部网络上,我需要访问公共资源 --- 例如 www.ourcompany.com,因为我们的内部 DNS 中没有 www 记录,所以我无法解析名称。
如何配置我的 DNS 以将其无法识别的名称转发到公共 DNS。
更新:根据评论,是的,我有一个“分割水平” DNS(当时这似乎是个好主意)此 AD 设置不到 24 小时,如果需要可以重新设置 - (虽然我宁愿不这样做)
答案1
听起来您有水平分割 DNS,其中您的 AD 命名空间和面向公众的命名空间是相同的。如果是这种情况,您需要www
在内部 AD 区域中创建 A 记录并设置正确的外部 IP。如果没有这个,内部客户端将无法解析它。这是因为您有两组具有不相交信息的服务器,它们都对您的 DNS 区域具有权威性。
这正是 Microsoft 建议使用未使用的第三级您的 AD 命名空间的域名。例如,如果您拥有mycompany.com
并在其上托管公共网站,则应该使用类似corp.mycompany.com
或 的internal.mycompany.com
名称作为您的 Active Directory 命名空间。如果您可以进行域重命名(即您有一个简单的客户端/服务器基础架构,域中没有 Exchange),则应该研究它。如果您无法进行域重命名来解决这个问题,那么您将面临一些麻烦。
编辑:根据您的更新,您应该绝对地重新执行此操作,因为安装只有 24 小时。毫无疑问。出现水平分割 DNS 情况绝不当可以避免时,这是一个好主意。您仍然可以使用mycompany.com
域的 NetBIOS 名称,这样用户看到的MyComapny\User
不是这样的Corp\User
,但您的 AD 命名空间的 FQDN 和面向公众的 DNS 命名空间的 FQDN 应该不是是相同的。
答案2
进入 DNS 管理单元。右键单击您正在管理的 DNS 服务器。选择“转发器”选项卡并输入您要将请求转发到的 DNS 服务器。
答案3
您的内部区域与外部区域相匹配,对吗?那么 company.com 是您的内部 AD 区域,而您的外部公共区域呢?如果是这样的话,那么据我所知,使用 Windows Server DNS 无法做到这一点。
就 Windows DNS 服务器而言,它对该区域具有权威性,因此它不会将该区域的请求转发到另一个 DNS 服务器,即使该请求针对的是不存在的 DNS 记录。
答案4
原则上,创建一个 PowerShell、VBScript 或其他工具应该相当简单,它可以定期查询外部 DNS 服务器,读取给定主机的外部 DNS IP 地址,并在内部 Windows 服务器上相应地更新它们。
我找了好几次都没找到,而且也不愿意自己写。