如何在 Windows Server 上创建 DNS 条目,以便可以使用单个单词(不带 TLD)来解析 IP?

如何在 Windows Server 上创建 DNS 条目,以便可以使用单个单词(不带 TLD)来解析 IP?

在 Windows Server DNS 角色中,是否可以创建一个 DNS 条目,以便我的网络中的所有设备(包括不属于同一域的设备)都可以将短主机名(例如:“test”)解析为主机的静态 IP 地址,而不需要 FQDN(例如:“test.example.com”)?

创建此类条目的正确方法是什么?

答案1

您正在寻找 Windows DNS 服务器中的 GlobalNames Zone 功能。以下是原始 Microsoft 文档描述该特征。

“...Windows Server 2008 中的 DNS 服务器角色支持一个特殊命名的区域,称为 GlobalNames。通过部署具有此名称的区域,您可以获得具有单标签名称的静态全局记录,而无需依赖 WINS。”

该文档提供了完整的详细信息,但在非常高的层次上,您需要创建一个名为“GlobalNames”的新 AD 集成正向查找区域,然后在 AD 林中的每个权威 DNS 服务器上运行以下命令:

dnscmd <ServerName> /config /enableglobalnamessupport 1

当然,Windows Server 的新版本现在可以通过 PowerShell 命令很好地解决此问题。创建正向查找区域后,您可以使用设置 DNS 服务器全局名称区域执行以下命令:

配置完成后,此区域中的记录将被单标签,您将能够解析http://测试(这假设您的未加入域的网络设备至少正在使用您的服务器进行 DNS。)

答案2

  1. 为您的网站添加 DNS A 记录:mywebsite.mydomain.local(将“mydomain.local”替换为您的实际域名和 TLD)
  2. 添加 DNS CNAME/Alias 记录:test.mydomain.local
  3. 在您的 Web 服务器上,为“测试”添加主机名绑定(如果您已添加通配符绑定来响应任何名称,则不需要),否则该网站将拒绝响应,因为它未配置为通过该名称进行监听
  4. 现在,您可以在非域主机上进行测试。如果不起作用,请转到网络适配器属性 > TCP/IPv4 属性 > 高级 > DNS。选择“附加这些 DNS 后缀”并添加您的域(例如 mydomain.local)。这可能是必要的,这样它就不会尝试路由 DNS 请求“http://测试”到互联网,而是假设它是一个域资源并要求您的本地 DNS 服务器来解析它。

如果这不起作用,您可以随时添加 hosts 文件条目,尽管通常不推荐这样做(只是因为它难以维护,而且您可能会忘记您有该条目,并且它可能会使事情不像您预期​​的那样运行)。

相关内容