这很难解释,所以请耐心听我说。
我们有 2 个域控制器,每个域控制器都具有多宿主功能,跨越 2 个内部子网(子网 A 和子网 B),并提供 dns、dhcp 和 ldap 身份验证。
两个域控制器各有 2 个 DNS 条目。两个条目具有相同的主机名,但分别对应于子网 A 和子网 B(显示示例条目):
dc1主机 192.168.8.1
dc1主机 192.168.9.1
dc2 主机 192.168.8.2
dc2 主机 192.168.9.2
我们的 dmz 还有第三个子网(子网 C),两个域控制器都没有 IP 地址,但我们的防火墙/路由表允许从子网 C 访问子网 A,反之亦然,但不允许从子网 C 访问子网 B。
这是我的问题。当子网 C 上的服务器通过主机名查询任一域控制器时,如何强制/确定使用哪个 dns 条目?现在它似乎随机选择两个条目中的一个,将名称换成 IP 地址,就这样。
问题是,如果它随机选择与 9.x 子网 B(无子网 C 访问)相对应的条目,则服务器无法解析。如果它选择 8.x 子网 A 的条目,则它解析(为这两个子网之间的通信定义的防火墙/路由表)
我想知道的是:
- 处理 DNS 服务器不存在的子网上的 DNS 解析的最佳实践是什么(如果有)?
- 当同一主机名有多个条目对应不同的 IP 子网时,我可以控制类似于度量值的东西来强制执行 DNS 解析顺序吗?
- 我是否应该为同一个名称设置 2 个 DNS HOST 条目?
以下是我想避免的情况:
- 编辑子网 C 上服务器的 HOSTS 文件,以强制将主机名的 DNS 解析到适当的子网
- 将 NIC 添加到 DC,让它们也跨越 DMZ,从而获得与子网 C 相对应的第三个 DNS 条目
再次,如果这篇文章太冗长/不清楚,我深感抱歉。
谢谢!
答案1
冒着无法回答您的问题的风险——我不明白为什么要对您的 DC 进行多宿主——只需将它们放在自己的子网中(VLAN 更好),这样可以从任何需要它的子网进行路由。这完全避免了拆分 DNS 问题。
我同意@Ed Fries 关于建立站点的评论 - 这也是我最初的想法 - 如果您必须保持相同的网络拓扑,那么这也许是一种合适的做事方式。
我仍然倾向于放弃多重归属(正如 Ed 指出的 MS 推荐的)方法。
答案2
我怀疑 OP 的多主设置是为了解决 DHCP 或 Wins 的问题。