不是 split-DNS,但接近

不是 split-DNS,但接近

我已阅读有关拆分DNS的以下文章:http://www.isaserver.org/tutorials/You_Need_to_Create_a_Split_DNS.html。我想我理解了这个概念,但是为了设置文章中建议的最佳解决方案,我需要控制“外部”的 DNS 服务器(就我而言,我无法做到这一点)。

我的场景如下:一个名为公司本地. 一个公共领域叫做公司网站。我有一个网站地址www.corp.com,它实际上指向域上的已发布服务器公司本地。我还想将此 Web 服务器发布给内部客户端(域中的客户端公司本地),而无需它们转到外部 IP 并返回。因此,我只需在 DNS 服务器上设置一个新区域,内部客户端 (公司本地) 使用称为公司网站,并添加一个条目www.corp.com,这次指向内部 IP 地址。

对于我的问题:我在外部 Web 服务器上还有许多其他条目,应该保留原样。我知道我可以复制并维护两个 DNS 服务器,但理想情况下我希望这样:

情况1

  1. 内部客户请求www.corp.com。
  2. 内部 DNS 服务器查找是否有 www.corp.com 的条目。
  3. 是的,因此它使用 www.corp.com 的内部 IP 地址进行回答。

案例 2

  1. 内部客户请求someother.corp.com。
  2. 内部 DNS 服务器查看是否有 someother.corp.com 的条目,但找不到
  3. 然后它将请求转发到外部 DNS 服务器,查看其中是否有为 someother.corp.com 定义的条目。
  4. 外部 DNS 服务器使用 someother.corp.com 的外部 IP 向内部 DNS 服务器做出响应。
  5. 内部 DNS 服务器响应内部客户端。

对于情况 2,实际情况是,内部 DNS 服务器认为它对区域 corp.com 具有权威性(某种程度上来说确实如此),如果它没有找到 someother.corp.com 的记录,它会向客户端做出否定答复。

希望我说清楚了,期待您的意见!提前致谢!另外,我正在运行带有 Windows DNS 服务器 (Windows Server 2008) 的 Windows 域。

答案1

这有点像 hack - 而且我只用 bind 做过,但它确实有效。

创建一个新的然后www.corp.com创建并@记录该区域作为您网站的内部 IP 地址。

这将使 DNS 服务器认为它对“区域”具有权威性,www.corp.com并在人们请求时返回 @ 记录www.corp.com。它会将 *.corp.com 的其余部分传递给您的普通公共 DNS 服务器进行递归查找,然后返回外部 IP。

答案2

如果你使用未绑定local-zone作为递归服务器,您可以使用和指令让它回复特定的本地数据local-data,并将任何未知的条目转发到外部服务器。

local-zone: corp.com. transparent
local-data: "www.corp.com. IN A www.xxx.yyy.zzz"

手册页位于http://www.unbound.net/documentation/unbound.conf.html

相关内容