DNS 情况无法解决?

DNS 情况无法解决?

我们即将在小型办公室部署一台简单的服务器来托管典型的小型办公室事务(用于电子邮件、日历、联系人等的 Mac 服务器)。我们很快遇到了这个奇怪的 DNS 问题:

本地客户端需要根据本地服务器进行解析才能使这些服务正常运行(例如 mail.mydomain.com 等)。

但 mydomain.com 的 DNS 实际上托管在外部,因为我们是一家软件公司,我们所有的产品都使用此域名(即 service.mydomain.com)。问题是有成千上万个这样的域名!

那么我该如何设置呢?我无法将外部查询移至本地服务器,因为它不应该为公司产品提供这些请求。我无法将本地查询移至外部服务器,因为这样 LAN IP 就无法工作了!


总而言之,我需要一个可以实现以下功能的设置:
1)允许我的本地客户端解析为 LAN IP(mail.mydomain.com -> LAN IP)
2)允许外部客户端继续使用外部 DNS 服务器来处理已经存在的数千个条目
3)允许我的本地客户端回退到外部 DNS 来处理未在本地提供服务的条目(service.mydomain.com)

答案1

在 LAN 上的服务器上运行 DNS 服务器。大多数典型的默认 DNS 服务器配置将允许客户端解析 Internet 名称。创建一个“mail.mydomain.com”区域,其中包含一个“@”A 记录,该记录解析为邮件服务器的 LAN IP 地址。对需要解析为 LAN 客户端的 LAN IP 的任何其他名称执行相同操作。由于您没有在 LAN DNS 服务器上创建“mydomain.com”区域,因此 LAN 客户端将请求 Internet DNS 服务器为“mydomain.com”区域提供的“service.mydomain.com”(当然,假设您没有在 LAN DNS 服务器上创建“service.mydomain.com”区域)。

答案2

答案3

并非完全无法解决。

跑步unbound在您的 Mac 服务器上本地执行此操作,并让它为您的本地主机提供答案,但将您域中其他主机的查询转发到外部权威服务器。

使用local-zone(“透明”模式)和local-data配置设置(参见手册页了解详情)。

答案4

我不是 Mac 用户,因此无法回答 Apple 特定的解决方案,但我会考虑在子域或与外部面向公众的域不同的域下运行本地服务。这样,您就无需费力地尝试解决此问题,只需让两台服务器执行两项不同的工作,一切即可顺利运行。

相关内容