我们有一个 Windows 2012 域,其中有 2 个通过 vpn 连接的不同站点。
站点 1 有一个带 dns 的 dc,站点 2 有两个带 dns 的 dc
大多数 dns 区域都集成到 AD 中,因此所有 3 个 dns 都会发生变化。
站点 1 和站点 2 都有更多子网(请考虑 lan 和 dmz),而 vpn 仅链接 lan 到 lan。在这两个 dmz 中都有可以从 Internet 访问的服务器,因此无需为站点之间的每个子网组合添加其他 vpn。
我想要实现的是,如果我在同一个站点中,则通过其私有地址访问 dmz 服务器,如果在另一个站点中,则通过关联的公共 ip 访问。
因此,名称解析应该根据客户端所在的站点而有所不同。可能我可以创建未集成在 AD 中的区域,因此它们在每个 dns 上可能不同。
我假设 site1 上的客户端会首先询问 site1 上的 dns,否则此配置将不起作用。
站点 2 有两个 dns:我是否必须为非 AD 集成区域手动对齐它们?我可以对主要/次要/存根区域做些魔术吗?
升级到 Server 2016 后,您可以使用 Windows DNS 服务器实现此目的。在该版本中,您可以使用DNS 策略来实现裂脑 DNS。
如果做不到这一点,您可以通过从 AD 集成区域中删除 A 记录并在每个 DC/DNS 服务器上创建一个新的正向查找区域(非 AD 集成)来实现此目的,并创建一个空白 A 记录您希望为 DC/DNS 服务器主要服务的站点解析名称的 IP 地址。这不是万无一失的,也不可靠。
过去,我通过使用防火墙技巧来实现这一点(我很抱歉,但自从我执行此操作以来已经有好几年了),防火墙被配置为将请求直接路由到已发布的资源,而不是尝试在防火墙上进行发夹。