如何在 Windows 2000 和 Windows Server 2003 中启用或禁用 DNS 更新

文章翻译 文章翻译
文章编号: 246804 - 查看本文应用于的产品
重要说明:本文包含有关修改注册表的信息。修改注册表之前,一定要先进行备份,并且一定要知道在发生问题时如何还原注册表。有关如何备份、还原和编辑注册表的信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
256986 Microsoft Windows 注册表说明
展开全部 | 关闭全部

本文内容

概要

Microsoft Windows 2000 支持域名系统 (DNS) 更新(根据 RFC 2136)。对于 Windows 2000 DNS 客户端,默认情况下启用此行为。

根据特定计算机上运行的配置和服务,执行 DNS 更新的组件会有所不同。没有一种集中的方法(如通过一种工具或一些注册表项)来管理所有组件的 DNS 更新行为。本文将介绍每个组件并描述如何修改该特定组件的行为。

本文还讨论了如何在 Microsoft Windows Server 2003 中禁用 DNS 更新。默认情况下,运行 Windows Server 2003 的客户端计算机启用了 DNS 更新。

简介


下列组件执行 DNS 更新:
  • 动态主机配置协议 (DHCP) 客户端服务:
    这些更新应用于所有基于 Windows 2000 的计算机。
  • DNS 服务器服务
    这些更新仅应用于基于 Windows 2000 的 DNS 服务器。
  • Net Logon 服务
    这些更新仅应用于基于 Windows 2000 的域控制器。
  • 远程访问客户端
    这些更新仅应用于基于 Windows 2000 的远程访问客户端。
注意:在通过修改本文列出的注册表项更改上述某个组件后,您必须停止受影响的服务然后重新予以启动。有时必须重新启动计算机。文中对这类情况给出了提示。

DHCP 客户端服务

警告:注册表编辑器使用不当可导致严重问题,可能需要重新安装操作系统。Microsoft 不能保证您可以解决因注册表编辑器使用不当而导致的问题。使用注册表编辑器需要您自担风险。

DHCP 客户端服务为网络适配器执行 DNS 更新,而不管该适配器的配置方式是使用 DHCP、手动方式还是静态方式。本节描述如何启用和禁用下列查找注册:
  • 所有适配器的正向和反向查找注册
  • 所有适配器的反向查找注册
  • 每适配器的高级 TCP/IP 属性控制
  • 每适配器的正向和反向查找注册
  • 每适配器的反向查找注册
  • 其他设置

所有适配器的正向和反向查找注册

要禁用由 DHCP 客户端服务为所有适配器执行的正向(A 资源记录)和反向(PTR 资源记录)注册,请使用下面的注册表子项:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DisableDynamicUpdate


范围:0 - 1
默认值:0

注意:如果将此注册表值设置为“1”,则位于每个网络接口的“TCP/IP 高级属性”的“DNS”选项卡上的“在 DNS 中注册此连接的地址”复选框将不会受到影响。如果在启用该策略前选中了此复选框,则在启用该策略后它将仍处于选中状态。该策略所做的注册表设置是影响所有接口的全局设置,而不是一个特定于适配器的设置。此全局设置不显示在数据类型 REG_DWORD 中。

此项禁用此计算机上所有适配器的 DNS 更新注册。使用 DNS 更新,每当发生地址更改时,DNS 客户端计算机会自动注册和更新其资源记录。
值      含义

-------------------------------------------

0      启用 DNS 更新注册

1      禁用 DNS 更新注册
注意:要使 DNS 更新在任何适配器上都能执行,必须在系统级和适配器级启用 DNS 更新。要对特定适配器禁用 DNS 更新,请将 DisableDynamicUpdate 值添加给一个接口名称注册表子项并将其值设置为 1。要禁用计算机上所有适配器的 DNS 更新,请将 DisableDynamicUpdate 值添加给下面的子项,然后将其值设置为 1
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters


注意:如果将此注册表值设置为 1,则“在 DNS 中注册此连接的地址”复选框将不反映对此注册表项所做的更改。(此复选框位于每个网络接口的“TCP/IP 高级属性”的“DNS”选项卡上。)如果在注册表更改之前选中了该复选框,则在此注册表更改后,它将继续保持选中状态。此注册表设置不是一个特定于适配器的设置,而是影响所有接口的全局设置。此全局设置不显示在用户界面中。

Windows 2000 不向注册表中添加此项。您可以通过编辑注册表或使用一个编辑注册表的程序添加它。

要使对此值的更改生效,您必须重新启动 Windows 2000。

所有适配器的反向查找注册

如果您希望使用正向查找(A 资源记录)注册,而不使用反向查找(PTR 资源记录)注册,请使用下面的注册表子项禁用 PTR 资源记录的注册:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DisableReverseAddressRegistrations


数据类型:REG_DWORD
范围:0 - 1
默认值:0

此项禁用通过该 DNS 客户端对 PTR 资源记录执行 DNS 更新注册。PTR 资源记录将一个 IP 地址与一个计算机名称关联起来。此项是为企业环境设计的,在这种环境中,对反向查找区域具有权威性的主 DNS 服务器不能执行 DNS 更新,或者被配置为不执行 DNS 更新。它减少了不必要的网络通信量,并消除了那些记录未能成功注册 PTR 资源记录的事件日志错误。
值      含义

----------------------------------

0      注册 PTR 资源记录

1      不注册 PTR 资源记录
注意:Windows 2000 不向注册表添加此项。您可以通过编辑注册表或使用一个编辑注册表的程序添加它。

要使对此值的更改生效,您必须重新启动 Windows 2000。

每适配器的高级 TCP/IP 属性控制

由每个适配器执行的 DNS 注册可通过使用“DNS”选项卡上的下列特定于适配器的高级 TCP/IP 设置进行更改:
  • 此连接的 DNS 后缀
  • 在 DNS 中注册此连接的地址
  • 在 DNS 注册中使用此连接的 DNS 后缀

默认设置“在 DNS 中注册此连接的地址”为在此适配器上配置的第一个 IP 地址注册 A 和 PTR 资源记录。清除此复选框会禁止 DHCP 客户端服务为此适配器注册 A 和 PTR 资源记录。

默认情况下,“在 DNS 注册中使用此连接的 DNS 后缀”设置处于清除状态。每台计算机都有一个主 DNS 后缀。使用 ipconfig /all 命令可查看此后缀。

另外,每个适配器还可以拥有一个为其自身配置的单独的 DNS 后缀。特定于适配器的 DNS 后缀可以手动配置,也可以通过将 DHCP 选项 15 用作 DHCP 租约过程的一部分来配置。

有关 DNS 选项的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
121005 由客户端支持的 DHCP 选项


如果选中此复选框,则 DHCP 客户服务不仅为主机名 PrimaryDnsSuffix 注册 A 和 PTR 资源记录,还为以下完全限定域名 (FQDN) 注册 A 和 PTR 资源记录:
hostname.dns_suffix_for_this_adaptor

每适配器的正向和反向查找注册

要禁用通过 DHCP 客户端服务对特定适配器执行的 A 和 PTR 资源记录注册,请使用下面的注册表子项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\<Interface name>\DisableDynamicUpdate


数据类型:REG_DWORD
范围:0 - 1
默认值:0

这将禁用此适配器上的 DNS 更新注册。使用 DNS 更新,每当发生地址更改时,DNS 客户端计算机会自动注册和更新其资源记录。
值       含义

--------------------------------------------

0       启用 DNS 更新注册

1       禁用 DNS 更新注册
注意:为了让 DNS 更新在任何适配器上都能执行,必须在系统级和适配器级启用它。要对特定适配器禁用 DNS 更新,请将 DisableDynamicUpdate 值添加到接口名称注册表子项中,然后将其值设置为 1。要在计算机的所有适配器上禁用 DNS 更新,请将 DisableDynamicUpdate 值添加到下面的注册表子项,然后将其值设置为 1:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters


Windows 2000 不向注册表中添加此项。您可以通过编辑注册表或使用一个编辑注册表的程序添加它。

要使对此值的更改生效,您必须重新启动 Windows 2000。

每适配器的反向查找注册

还没有一种机制能够针对每个适配器禁用 PTR 资源记录注册。

其他设置

本节列出了 DHCP 客户端服务使用的其他参数,因为这些参数与 DNS 更新有关。

默认情况下,DNS 记录周期性地进行动态重新注册,Windows 2000 Professional 执行重新注册的周期是 24 小时,Windows 2000 Server 和 Windows 2000 Advanced Server 的周期是 1 小时。您可以使用下面的注册表子项修改更新时间间隔:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DefaultRegistrationRefreshInterval
数据类型:REG_DWORD
范围:0x0 - 0xFFFFFFFF 秒
默认值:对于 Windows 2000 Professional,为 0x15180(86,400 秒 = 24 小时)
默认值:对于 Windows 2000 Server 和 Windows 2000 Advanced Server,为 0xE10(3,600 秒 = 1 小时)
范围:影响所有适配器

它指定了 DNS 更新注册更新之间的时间间隔。

Windows 2000 不向注册表中添加此项。您可以通过编辑注册表或使用一个编辑注册表的程序添加它。

要使对此值的更改生效,您必须重新启动 Windows 2000。

用于动态注册的默认“生存时间”(TTL) 值是 20 分钟。您可以使用下面的注册表子项修改 TTL 值:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DefaultRegistrationTTL


数据类型:REG_DWORD
范围:0x0 - 0xFFFFFFFF 秒
默认值:0x4B0(1,200 秒 = 20 分钟)
范围:影响所有适配器

它指定 DNS 注册的 TTL。

Windows 2000 不向注册表中添加此项。您可以通过编辑注册表或使用一个编辑注册表的程序添加它。

要使对此值的更改生效,您必须重新启动 Windows 2000。

默认情况下,只有第一个 IP 地址是动态注册的。对于配置了多个 IP 地址(逻辑多主)的适配器,您可以使用下面的注册表项来修改为其动态注册的 IP 地址数:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Adapters\<Interface name>\MaxNumberOfAddressesToRegister


数据类型:REG_DWORD
范围:0x0 - 0xFFFFFFFF
默认值:0x1
范围:仅影响此适配器

此设置确定可在 DNS 中为此适配器注册的 IP 地址的最大数目。

如果此项的值为 0,则此适配器不能注册 IP 地址。

要使对此值的更改生效,您必须重新启动 Windows 2000。

默认情况下将尝试不安全的 DNS 注册。您可以使用下面的注册表子项修改此行为:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\UpdateSecurityLevel


数据类型:REG_DWORD
范围:0x0 | 0x10 | 0x100
默认值:0x0
范围:影响所有适配器

它确定 DNS 客户端是使用安全动态更新还是使用标准动态更新。Windows 2000 既支持动态更新,也支持安全动态更新。使用安全动态更新时,权威名称服务器仅接受来自授权客户端和服务器的更新。
值            含义

-------------------------------------------------------------

0 (0x0)		仅当不安全动态更新被拒绝时
		发送安全动态更新。

16 (0x10)	仅发送不安全动态更新。

256 (0x100)	仅发送安全动态更新。
Windows 2000 不向注册表中添加此项。您可以通过编辑注册表或使用一个编辑注册表的程序添加它。

要使对此值的更改生效,您必须重新启动 Windows 2000。

默认情况下,DNS 客户端尝试将原始注册替换为一个将 DNS 名称与它自己的 IP 地址关联起来的记录。您可以使用下面的注册表子项修改此行为:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DisableReplaceAddressesInConflicts


数据类型:REG_DWORD
范围:0 - 1
默认值:0
范围:影响所有适配器

它防止 DNS 客户端在动态更新期间发现地址冲突时覆盖现有的资源记录。如果 DNS 客户端发现一个现有的 A 资源记录将其 DNS 名称与另一台计算机的 IP 地址相关联,就会发生地址冲突。

默认情况下,DNS 客户端尝试将原始注册替换为一个将 DNS 名称与它自己的 IP 地址关联起来的记录。但是,您可以使用此项让 DNS 退出注册过程。事件查看器中不记录错误。

此项是为不使用安全动态更新的区域设计的。它防止未经授权的用户更改客户端计算机的 IP 地址注册。
值		含义

---------------------------------------------------------------

0		DNS 客户端用它自己的 IP 地址的 A 资源记录
		覆盖现有的 A 资源记录。

1		DNS 客户端退出注册过程。 
事件查看器日志中不记录错误。
Windows 2000 不向注册表中添加此项。您可以通过编辑注册表或使用一个编辑注册表的程序添加它。

要使对此值的更改生效,您必须重新启动 Windows 2000。

DNS 服务器服务

如果 DNS 服务器服务对于特定名称是权威的 (SOA),它会为它侦听的所有适配器注册主机名 A 资源记录。

当运行 DNS 服务器服务的服务器有多个适配器时,可能会自动发布一些不需要的地址。常见的情形包括:断开连接的或未使用的网络适配器发布 AutoNet 地址,专用或外围网络 (DMZ) 接口发布无法访问的地址。

如果网络负载平衡服务安装在一个 DNS 服务器上,则虚拟网络适配器地址和专用网络适配器地址都将由 DNS 服务器服务注册。DNS 服务器所侦听的适配器可通过使用 DNS 管理单元来更改。在“服务器属性”中,单击“适配器”选项卡。

如果 DNS 服务器侦听和服务的 IP 地址列表与公布的或由 DNS 服务器服务注册的 IP 地址列表不同,请使用下面的注册表子项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters\PublishAddresses


数据类型:REG_SZ
范围:IP 地址 [IP 地址]
默认值:空

此值指定您要为计算机发布的 IP 地址。DNS 服务器仅为此列表中的地址创建 A 资源记录。如果此项未出现在注册表中,或者其值为空,则 DNS 服务器会为计算机的每个 IP 地址创建一个 A 资源记录。

此项是为具有多个 IP 地址的计算机设计的。使用此项,您可以仅发布可用地址的一个子集。通常,此项用于防止 DNS 服务器在计算机有一个共用网络地址时为查询返回专用网络地址。

DNS 仅在启动时读取它的注册表项。您可以使用 DNS 控制台在 DNS 服务器运行时更改注册表项。如果您通过编辑注册表更改注册表项,则这些更改在重新启动 DNS 服务器后才会生效。

DNS 服务器不向注册表添加此项。您可以通过编辑注册表或使用一个编辑注册表的程序添加它。

Net Logon 服务

默认情况下,Net Logon 每小时注册一次特定的 SRV、CNAME 和 A 资源记录,即使其中部分或全部记录已在 DNS 中正确注册。Net Logon 服务试图注册的记录的列表存储在 %systemroot%\System32\Config\Netlogon.dns 文件中。此日志文件列出了注册到域控制器所需的记录。

Net Logon 服务没有提供一种机制来控制它针对每个适配器执行的注册。本节介绍如何启用和禁用下列各项:
  • 所有注册
  • Net Logon 服务 A 注册

所有注册

要禁用由 Net Logon 服务执行的所有注册,请使用下面的注册表子项。(需要重新启动 Net Logon 服务,不过最好是重新启动计算机。)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters\UseDynamicDns


数据类型:REG_DWORD
范围:0 - 1
默认值:1

此值确定此域控制器上的 Net Logon 服务是否使用 DNS 更新。Net Logon 服务可以使用 DNS 更新来注册标识域控制器的 DNS 名称。每当授权的区域服务器请求一个更新时,DNS 更新便对区域主服务器上的区域数据(如 DNS 名称)进行自动更新。DNS 对静态、手动添加和更改区域记录起到了补充作用。RFC 2136 中定义了动态更新协议。
值		含义

-------------------------------------------------------------

0		Net Logon 服务不使用 DNS 更新。必须
		在 DNS 中手动注册在 Netlogon.dns 文件中
		指定的记录。

1		Net Logon 服务使用 DNS 更新来注册
标识此域控制器的名称。
如果您的 DNS 服务器不支持 DNS 更新,或者您要消除定期注册 Net Logon 服务的 DNS 记录而产生的网络通信量,则可以考虑禁止 Net Logon 服务使用 DNS 更新。

此项仅在域控制器上受支持。Windows 2000 不向注册表中添加此项。您可以通过编辑注册表或使用一个编辑注册表的程序添加它。

要使对此值的更改生效,请删除 %systemroot%\System32\Config\netlogon.dnb 文件,然后重新启动 Net Logon 服务。最好是重新启动 Windows 2000。

Net Logon 服务 A 注册

默认情况下,域控制器上的 Net Logon 服务每小时注册一次 SRV、域 A 和全局编录 A 资源记录。SRV 记录映射到一个 FQDN,A 资源记录映射到一个 IP 地址。

如果客户端将域名解析为一个无法访问的 IP 地址,则每小时(默认)由 Net Logon 服务为所有适配器执行的对域 A 资源记录的注册和后续的重新注册可能容易出问题。

下面的注册表子项启用或禁用由 Net Logon 服务为一个域控制器执行的对 A 资源记录的注册。Windows 2000 不需要域 A 资源记录,但是为了便于实现不支持 SRV 记录的轻量目录访问协议 (LDAP),也注册了域 A 资源记录。

此 RegisterDnsARecords 注册表值禁用由 Net Logon 服务执行的所有 A 资源记录注册。这些记录包括 gc._msdcs.DnsForestName 记录。如果将 RegisterDnsARecords 注册表值设置为禁用,则需要注册 gc._msdcs.DnsForestName 记录而且必须手动执行。

有关注册这些 A 资源记录的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
258213 必须在 DNS 中注册 gc._msdcs.<DnsForestName> 记录
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters\RegisterDnsARecords


数据类型:REG_DWORD
范围:0 - 1
默认值:1

此值确定此域控制器是否为该域注册 DNS A(IP 地址)记录。如果此域控制器是一个全局编录资源,此项还确定该域控制器是否注册全局编录 DNS A 资源记录。
值		含义

-------------------------------------------------------------

0		不注册 DNS A 资源记录。不支持 SRV 记录的 LDAP 实现
		无法在此域控制器上
		定位 LDAP 服务器。

1		注册 DNS A 资源记录。
注意:仅在此项出现在域控制器的注册表中时才使用此项。如果 DNS 由于无法更新 A 资源记录而不能完成其更新,您可能需要将此值设置为 0。当更新尝试失败时,DNS 将停止更新。

Windows 2000 不向注册表中添加此项。您可以通过编辑注册表或使用一个编辑注册表的程序添加它。

要使对此值的更改生效,您必须重新启动 Netlogon 服务。最好是重新启动 Windows 2000。

远程访问客户端

若要配置单独的远程访问服务连接设置,请使用高级 TCP/IP 属性,如“每适配器 - 高级 TCP/IP 属性控制”一节中所述。

如何在 Windows Server 2003 中禁用 DNS 更新

默认情况下,运行 Windows Server 2003 的客户端计算机启用了 DNS 更新。要对所有网络接口禁用 DNS 更新,请按照下列步骤操作:
  1. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
  2. 找到并单击下面的注册表子项:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ Tcpip\Parameters
  3. 在“编辑”菜单上,指向“新建”,然后单击“DWORD 值”。
  4. 键入 DisableDynamicUpdate,然后按两次 Enter。
  5. 在“编辑 DWORD 值”对话框中的“数值数据”框中键入 1,然后单击“确定”。

    注意:默认情况下,DNS 更新处于启用状态 (0)。
  6. 退出注册表编辑器。


要对特定接口禁用 DNS 更新,请按照下列步骤操作:
  1. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
  2. 找到并单击下面的注册表子项:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ Tcpip\Parameters\Interfaces\deviceID


    注意deviceID 是接口的网络适配器的设备 ID。
  3. 在“编辑”菜单上,指向“新建”,然后单击“DWORD 值”。
  4. 键入 DisableDynamicUpdate,然后按两次 Enter。
  5. 在“编辑 DWORD 值”对话框中的“数值数据”框中键入 1,然后单击“确定”。
  6. 退出注册表编辑器。
有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
816592 如何在 Windows Server 2003 中配置 DNS 动态更新

属性

文章编号: 246804 - 最后修改: 2006年2月20日 - 修订: 4.2
这篇文章中的信息适用于:
  • Microsoft Windows Server 2003 Datacenter Edition
  • Microsoft Windows Server 2003 Enterprise Edition
  • Microsoft Windows Server 2003 Standard Edition
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Professional Edition
关键字:?
kbinfo KB246804
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com