这里完整的 NooB 问题,我怀疑我严重混淆了术语!...
在 Windows 2008 PDC 上运行 DNS 管理器。
这将控制 mydomain.com 下的所有内容的域查询,例如 desk1.mydomain.com
转发器设置为查询路由器(随后查询互联网 DNS 服务器)以获取此域之外的 DNS 记录(serverfault.com 等)
我想将其设置为将 DNS 查询发送到路由器,以获取超出内部网络范围的几个子域 - 例如,我不想将 www.mydomain.com (外部托管)的 IP 地址放入 Windows DNS - 我希望它从 t'interweb 获取此地址。
有很多子域名 - 所以像通配符这样的东西会很理想 - 即任何你不知道的东西,然后将查询转发到路由器。
有人能理解我的推文吗?
答案1
如果您的 Active Directory 域名是“mydomain.com”,并且您有一个名为“www.mydomain.com”的外部托管网站,则您必须(如您所说)在内部 Windows 2008 DNS 服务器上创建指向外部 Web 服务器 IP 地址的“A 记录”。
更好的方法是将您的 Active Directory 域称为“mydomain.local”或“ad.mydomain.com”,并让外部 DNS 服务器拥有“mydomain.com”的权威性。
从您的其他帖子中我看到您正在使用 SBS 2008。遗憾的是,如果不从头开始重新安装 SBS 2008,您就无法重命名 AD 域名。
编辑。
如果您谈论的是真正的“子域”,那么您可以在外部 DNS 服务器上创建子域,并且在 Windows DNS 服务器内部可以将权限委托给外部名称服务器。
例如,名为“newyork.mydomain.com”的子域名可以有名为“www.newyork.mydomain.com”和“ftp.newyork.mydomain.com”等的主机。
但我认为您指的是主机名而不是子域。这意味着您需要为每个外部主机名创建一个“A 记录”。
答案2
您无需为不在您网络上的域添加记录。如果设置正确,当客户端向您的 DNS 服务器查询它不知道的记录时,它会将您的查询转发到链中的下一个 DNS 服务器,在本例中是您的路由器。要使此功能正常工作,只需在 DNS 服务器属性中正确设置您的转发器即可。
看本文了解有关转发器如何工作的更多详细信息。
您遇到的问题是您的 DNS 服务器负责 mydomain.com 范围,因此它收到的任何针对 mydomain.com 不存在的请求都不会转发,而只会发送未找到的响应。
您需要明确告诉您的 DNS 服务器外部子域的实际位置,因此您可以为每个子域添加一个 A 记录,其中包含外部服务器的 IP,或者如果您想转发该域的所有子域,则可以使用通配符 *.mydomain.com。这将返回 DNS 中没有自己的 A 记录的任何子域的相应 IP 地址。