Windows Server 2003 提供了对动态更新功能的支持,如“请求注释”(RFC) 2136 中所述。对于 DNS 服务器,DNS 服务允许您在每个配置为加载标准主区域或目录集成区域的服务器上按区域启用或禁用 DNS 动态更新功能。
回到顶端
Windows Server 2003 DNS 动态更新功能
客户端计算机可通过 DNS 服务在 DNS 中动态更新其资源记录。使用此功能可以减少手动管理区域记录所需的时间,从而改进了 DNS 管理。您可以将 DNS 动态更新功能与 DHCP 结合使用,以便在计算机的 IP 地址更改时更新资源记录。运行 Windows Server 2003 的计算机可以发送动态更新。
Windows Server 2003 提供了下列与 DNS 动态更新协议相关的功能: • 支持将 Active Directory 目录服务用作域控制器的定位器服务。
• 与 Active Directory 集成。
可以将 DNS 区域集成到 Active Directory 中以提供增强的容错功能和安全性。每个 Active Directory 集成的区域都在 Active Directory 域中的所有域控制器中进行复制。在这些域控制器上运行的所有 DNS 服务器都可以充当该区域的主服务器并接受动态更新。Active Directory 复制以属性为基础进行,并只传播相关的更改。
• 支持老化和清理记录。
DNS 服务可以扫描并删除不再需要的记录。启用此功能可以防止在 DNS 中保留陈旧记录。
• 支持在 Active Directory 集成的区域中进行安全动态更新。
您可以为 Active Directory 集成的区域配置安全动态更新,以便只允许授权用户更改区域或记录。
• 在命令提示符下进行管理。
• 增强的名称解析。
• 增强的缓存和否定缓存。
• 可以与其他 DNS 服务器实现进行互 *** 作。
• 与其他网络服务集成。
• 增量区域复制。
回到顶端
基于 Windows Server 2003 的计算机如何更新其 DNS 名称
默认情况下,运行 Windows Server 2003 并以静态方式配置了 TCP/IP 的计算机尝试动态注册由其安装的网络连接配置和使用的 IP 地址的主机地址 (A) 和指针 (PTR) 资源记录。默认情况下,所有计算机注册记录均基于其完整的计算机名。
对于 Windows Server 2003 计算机,主要完整计算机名(一个完全合格的域名 [FQDN])是附加到计算机名的计算机的主 DNS 后缀。要确定计算机的主 DNS 后缀和计算机名,请右键单击“我的电脑”,单击“属性”,然后单击“计算机名”。
动态更新可以根据以下任一原因或事件发送: • 在已安装的任一网络连接的 TCP/IP 属性配置中添加、删除或修改了 IP 地址。
• IP 地址租约通过 DHCP 服务器更改或续订了任一已安装的网络连接。例如,当计算机启动时,或者您使用 ipconfig /renew 命令时。
• 使用 ipconfig /registerdns 命令手动强制在 DNS 中刷新客户端名称注册。
• 启动时,即打开计算机时。
• 成员服务器升级为域控制器。
当以上事件之一触发动态更新时,DHCP 客户端服务(而非 DNS 客户端服务)将发送更新。如果由于 DHCP 而导致 IP 地址信息发生更改,DNS 中会执行对应的更新,以同步计算机的名称到地址映射。DHCP 客户端服务为系统中的所有网络连接(包括未配置为使用 DHCP 的连接)执行此功能。
注意:• 使用 DHCP 获取其 IP 地址的基于 Windows Server 2003 的计算机的动态更新过程与本部分介绍的过程有所不同。有关更多信息,请参阅本文的 将 DHCP 与 DNS 集成 部分和Windows DHCP 客户端和 DNS 动态更新协议 部分。
• 本部分介绍的更新过程假定 Windows Server 2003 安装默认值有效。如果将高级 TCP/IP 属性配置为使用非默认 DNS 设置,则可以调整特定名称和更新行为。
• 除计算机的完整计算机名(或主要名称)以外,您可以配置其他特定于连接的 DNS 名称,也可以在 DNS 中注册或更新它们。
动态更新工作原理的示例
对于 Windows Server 2003,当计算机的 DNS 名称或 IP 地址更改时,通常会请求动态更新。例如,名为“oldhost”的客户端最初在系统属性中配置为使用以下名称:
计算机名:oldhost
计算机的 DNS 域名:examplemicrosoftcom
完整计算机名:oldhostexamplemicrosoftcom
在本示例中,没有为计算机配置连接特定的 DNS 域名。如果将计算机从“oldhost”重命名为“newhost”,将发生以下名称更改:
计算机名:newhost
计算机的 DNS 域名:examplemicrosoftcom
完整计算机名:newhostexamplemicrosoftcom
在系统属性中应用名称更改后,Windows Server 2003 将提示您重新启动计算机。计算机重新启动 Windows 后,DHCP 客户端服务将按顺序执行以下步骤以更新 DNS: 1 DHCP 客户端服务使用计算机的 DNS 域名发送起始授权机构 (SOA) 类型查询。
客户端计算机使用计算机当前配置的 FQDN(如“newhostexamplemicrosoftcom”)作为此查询中指定的名称。
2 区域中包含此客户端 FQDN 的权威性 DNS 服务器响应此 SOA 类型查询。
对于标准的主要区域,在 SOA 查询中返回的主服务器(所有者)是固定和静态的。它始终与准确的 DNS 名称相匹配,因为该名称显示在区域中存储的 SOA 资源记录中。然而,如果正在更新的区域是目录集成的区域,则任何正在加载此区域的 DNS 服务器都可以响应此 SOA 查询并在 SOA 查询响应中插入它自己的名称作为此区域的主服务器(所有者)。
3 DHCP 客户端服务尝试联系主 DNS 服务器。
客户端处理对其名称的 SOA 查询的响应,以确定被授权作为接受其名称的主服务器的 DNS 服务器的 IP 地址。如有必要,客户端将继续执行以下过程,以联系并动态更新其主服务器: a 客户端向在 SOA 查询响应中确定的主服务器发送一个动态更新请求。
如果更新成功,则不执行其他 *** 作。
b 如果此更新失败,则客户端接下来针对在 SOA 记录中指定的区域名称发送一个 NS 类型查询。
c 客户端在收到此查询的响应时,将向此响应中列出的第一个 DNS 服务器发送 SOA 查询。
d 解析此 SOA 查询后,客户端将向在返回的 SOA 记录中指定的服务器发送动态更新。
如果更新成功,则不执行其他 *** 作。
e 如果此更新失败,则客户端将通过向在响应中列出的下一个 DNS 服务器发送动态更新来重复 SOA 查询过程。
4 联系到可以执行更新的主服务器后,客户端将发送更新请求,然后服务器处理该请求。
更新请求的内容包括指示添加“newhostexamplemicrosoftcom”的 A(以及可能的 PTR)资源记录并删除“oldhostexamplemicrosoftcom”(先前注册的名称)的这些相同的记录类型。
服务器还将进行检查以确保允许根据客户端请求进行更新。对于标准的主要区域,动态更新是不安全的并且任何客户端的更新尝试都会成功。对于 Active Directory 集成的区域,更新是安全的并且使用基于目录的安全设置执行更新。
动态更新定期发送或刷新。默认情况下,计算机每 7 天发送一次刷新。如果发生更新而区域数据未更改,则区域仍保持其当前版本并且不写入更改。仅当名称或地址实际更改时,才会传输导致实际区域更改或增大区域的更新。
注意:处于非活动状态或在刷新间隔(7 天)中未更新的名称将不从 DNS 区域中删除。DNS 不通过某种机制来释放或删除名称,尽管 DNS 客户端的确在应用新名称或地址更改后尝试删除或更新旧名称记录。
DHCP 客户端服务在注册 Windows Server 2003 计算机的 A 和 PTR 资源记录时,对主机记录使用默认的缓存生存期 (TTL) 值,即 15 分钟。该值决定其他 DNS 服务器和客户端对包含在查询响应中的计算机的记录进行缓存的时间长度。
将 DHCP 与 DNS 集成
使用 Windows Server 2003,DHCP 服务器可以在 DNS 名称空间中为支持动态更新的任何客户端启用动态更新。作用域客户端可以在 DHCP 为其分配的地址发生更改时,使用 DNS 动态更新协议更新其主机名到地址映射信息。(此映射信息存储在 DNS 服务器上的区域中。)Windows Server 2003 DHCP 服务器可以代表其 DHCP 客户端对任何 DNS 服务器执行更新。
DHCP/DNS 更新交互的工作原理
您可以使用 DHCP 服务器代表其启用了 DHCP 的客户端注册和更新 PTR 和 A 资源记录。执行此 *** 作时,您必须使用另一 DHCP 选项,即“客户端 FQDN”选项(选项 81)。此选项允许客户端提供其 FQDN 并指示 DHCP 服务器如何代表它处理 DNS 动态更新(如果有更新)。
当合格的 DHCP 客户端(如运行 Windows Server 2003、Microsoft Windows 2000 或 Microsoft Windows XP 并启用了 DHCP 的计算机)发出此选项后,Windows Server 2003 DHCP 服务器将处理并解释此选项,以确定如何代表该客户端初始化更新。
例如,您可以使用以下任一配置来处理客户端请求: • 根据客户端请求,DHCP 服务器通过其配置的 DNS 服务器注册和更新客户端信息。
这是 Windows Server 2003 DHCP 服务器和运行 Windows Server 2003、Windows 2000 或 Windows XP 的客户端的默认配置。在此模式下,任何 Windows DHCP 客户端都可以指定 DHCP 服务器更新其主机 A 和 PTR 资源记录的方式。如果可能,DHCP 服务器将接受客户端对其 DNS 中的名称和 IP 地址信息进行更新的处理请求。
要将 DHCP 服务器配置为根据客户端的请求注册客户端信息,请打开服务器或单个作用域的 DHCP 属性,单击“DNS”选项卡,单击“属性”,然后单击“只有在 DHCP 客户端请求时才动态更新 DNS A 和 PTR 记录”复选框,将其选中。
• DHCP 服务器始终通过其配置的 DNS 服务器注册和更新客户端信息。
这是修改后的配置,Windows Server 2003 DHCP 服务器和运行 Windows Server 2003、Windows 2000 或 Windows XP 的客户端均支持该配置。在此模式下,DHCP 服务器始终对客户端的 FQDN 和租用的 IP 地址信息(包括其主机 A 和 PTR 资源记录)执行更新,而不管客户端是否已请求执行它自身的更新。
要将 DHCP 服务器配置为通过其配置的 DNS 服务器注册和更新客户端信息,请打开服务器的 DHCP 属性,单击“DNS”,单击“属性”,单击“根据下面的设置启用 DNS 动态更新”复选框,然后单击“总是动态更新 DNS A 和 PTR 记录”。
• DHCP 服务器从不通过其配置的 DNS 服务器注册和更新客户端信息。
要使用此配置,必须将 DHCP 服务器配置为禁止执行 DHCP/DNS 代理更新。使用此配置时,将不更新 DHCP 客户端的 DNS 中的客户端主机 A 或 PTR 资源记录。
要将服务器配置为从不更新客户端信息,请打开 DHCP 服务器或它在 Windows Server 2003 DHCP 服务器上的某个作用域的 DHCP 属性,单击“DNS”,单击“属性”,然后清除“根据下面的设置启用 DNS 动态更新”复选框。默认情况下,始终对新安装的 Windows Server 2003 DHCP 服务器和为其创建的任何新作用域执行更新。
Windows DHCP 客户端和 DNS 动态更新协议
运行 Windows Server 2003、Windows 2000 或 Windows XP 的 DHCP 客户端与运行早期版本的 *** 作系统的 DHCP 客户端在执行 DHCP/DNS 交互方式时存在差别。以下示例说明了此过程在不同情况下的差别。
Windows Server 2003、Windows 2000 和 Windows XP DHCP 客户端的 DHCP/DNS 更新交互的示例
Windows Server 2003、Windows 2000 和 Windows XP DHCP 客户端按以下方式与 DNS 动态更新协议进行交互: 1 客户端向服务器初始化一个 DHCP 请求消息 (DHCPREQUEST)。该请求包含选项 81。
2 服务器向客户端返回 DHCP 确认消息 (DHCPACK),该消息向客户端授予 IP 地址租约,并包含选项 81。如果 DHCP 服务器的配置为默认设置,则选项 81 告知客户端:DHCP 服务器将注册 DNS PTR 记录,客户端将注册 DNS A 记录。
3 客户端向 DNS 服务器异步发送一个 DNS 更新请求,请求更新它自身的正向查找记录(主机 A 资源记录)。
4 DHCP 服务器注册客户端的 PTR 记录。
使用 Windows Server 2003 以前的 Windows 版本的 Windows DHCP 客户端的 DHCP/DNS 更新交互的示例
早期版本的 Windows DHCP 客户端不直接支持 DNS 动态更新过程,并且无法与 DNS 服务器直接交互。对于这些 DHCP 客户端,通常按以下方式处理更新: 1 客户端向服务器初始化一个 DHCP 请求消息 (DHCPREQUEST)。该请求不包含选项 81。
2 服务器向客户端返回 DHCP 确认消息 (DHCPACK),该消息向客户端授予 IP 地址租约,但不包含选项 81。
3 服务器向 DNS 服务器发送客户端的正向搜索记录(主机 A 资源记录)更新,服务器还发送客户端的 PTR 反向搜索记录更新。
安全动态更新
对于 Windows Server 2003,只有已集成到 Active Directory 的区域才可以获得 DNS 更新安全性。将区域集成到目录后,您可以使用 DNS 管理单元中提供的访问控制列表 (ACL) 编辑功能在特定区域或资源记录的 ACL 中添加或删除用户或组。
有关更多信息,请参阅 Windows Server 2003 帮助,并搜索 To modify security for a resource record(修改资源记录的安全性)或 To modify security for a directory integrated zone(修改目录集成区域的安全性)。
默认情况下,按以下方式处理 Windows Server 2003 DNS 服务器和客户端的动态更新安全性: 1 Windows Server 2003 DNS 客户端首先尝试使用不安全的动态更新。如果不安全的更新被拒绝,则客户端尝试使用安全更新。
此外,客户端还使用允许它们尝试覆盖先前注册的资源记录的默认更新策略,除非更新安全性明确禁止这些客户端。
2 当区域成为 Active Directory 集成区域后,Windows Server 2003 DNS 服务器在默认情况下只允许安全动态更新。
使用标准区域存储时,DNS 服务器服务在默认情况下不允许对其区域进行动态更新。对于目录集成的区域或使用基于标准文件的存储的区域,您可以将区域更改为允许所有动态更新。这样,即可通过使用安全更新来接受所有更新。
重要说明:“DHCP 服务器”服务可以为不支持动态更新的旧式客户端执行代理注册和 DNS 记录更新。有关更多信息,请参阅 Windows Server 2003 帮助,并搜索 Using DNS servers with DHCP(通过 DHCP 使用 DNS 服务器)。
如果在网络上使用多个 Windows Server 2003 DHCP 服务器,并将区域配置为只允许安全动态更新,请使用“Active Directory 用户和计算机”管理单元将 DHCP 服务器计算机添加到内置的 DnsUpdateProxy 组。这样,所有 DHCP 服务器都将拥有为任何 DHCP 客户端执行代理更新的安全权限。有关更多信息,请参阅 Windows Server 2003 帮助,并搜索 Using DNS servers with DHCP(通过 DHCP 使用 DNS 服务器)或 Manage groups(管理组)。
注意:在 Windows Server 2003 中,如果在域控制器上运行 DHCP 服务器,并将 Windows Server 2003 DHCP 服务器配置为代表其客户端执行 DNS 记录注册,则可能会对安全动态更新功能造成负面影响。要避免此问题,请将 DHCP 服务器和域控制器部署在不同的计算机上,或配置 DHCP 使用专用的用户帐户进行动态更新。有关更多信息,请参阅 Windows Server 2003 帮助,并搜索 Using DNS servers with DHCP(通过 DHCP 使用 DNS 服务器)。
有关更多信息,请参阅本文的 使用 DnsUpdateProxy 组时的安全注意事项 部分中列出的文件版本,则无需这些更新。
只允许安全动态更新
1 单击“开始”,指向“管理工具”,然后单击“DNS”。
2 在“DNS”下,双击相应的 DNS 服务器,双击“正向查找区域”或“反向查找区域”,然后右键单击相应的区域。
3 单击“属性”。
4 在“常规”选项卡上,确认区域类型为“Active Directory 集成的区域”。
5 在“动态更新”框中,单击“安全”。
6 单击“确定”。
注意:只有 Active Directory 集成的区域支持安全动态更新功能。如果配置其他区域类型,则必须更改区域类型并将其集成到目录中,然后才能对其进行安全的 DNS 动态更新。动态更新是对 DNS 标准的符合 RFC 的扩展。RFC 2136 的“域名系统中的动态更新 (DNS UpdateS)”部分定义了 DNS 更新过程。
使用 DnsUpdateProxy 安全组
您可以对 Windows Server 2003 DHCP 服务器进行配置,以便它能够代表 DHCP 客户端动态注册主机 A 和 PTR 资源记录。如果您对 Windows Server 2003 DNS 服务器使用此配置中的安全动态更新,则资源记录可能会变得陈旧。
例如,假设下面的情形: 1 Windows Server 2003 DHCP 服务器 (DHCP1) 代表它的某个客户端对特定的 DNS 域名执行安全动态更新。
2 由于 DHCP 服务器成功创建了此名称,因此它成为该名称的所有者。
3 当此 DHCP 服务器成为该客户端名称的所有者后,只有此 DHCP 服务器可以更新该名称。
在某些情况下,这可能会引起问题。例如,如果 DHCP1 出现故障,且另一个备份 DHCP 服务器变为联机状态,则由于此备份服务器不是该客户端名称的所有者,因此它无法更新此客户端名称。
在另一示例中,如果 DHCP 服务器为旧式客户端执行动态更新,然后您将这些客户端升级到 Windows Server 2003、Windows 2000 或 Windows XP,那么升级后的客户端无法拥有或更新其 DNS 记录。
为解决此问题,Windows 提供了名为 DnsUpdateProxy 的内置安全组。如果所有 DHCP 服务器都被添加为 DnsUpdateProxy 组的成员,那么在某个服务器出现故障时,可以由其他服务器更新该服务器的记录。另外,由于 DnsUpdateProxy 组成员创建的所有对象都不受安全保护,第一个修改与 DNS 名称相关的记录集的用户(不是 DnsUpdateProxy 组成员)就成为名称的拥有者。因此,当旧式客户端升级后,它们可以获得自己在 DNS 服务器上的名称记录的所有权。如果为旧式客户端注册资源记录的每个 DHCP 服务器都是 DnsUpdateProxy 组成员,则可避免本文前面讨论的问题。
向 DnsUpdateProxy 组添加成员
使用“Active Directory 用户和计算机”管理单元配置 DnsUpdateProxy 安全组。
注意:如果使用多个 DHCP 服务器提供容错功能,并使用安全动态更新,请将每个服务器添加到 DnsUpdateProxy 全局安全组。
使用 DnsUpdateProxy 组时的安全注意事项
如果 DHCP 服务器是 DnsUpdateProxy 组成员,那么由 DHCP 服务器注册的 DNS 域名是不安全的。例如,DHCP 服务器自身的主机 (A) 资源记录就是这样的记录。另外,由于 DnsUpdateProxy 组成员创建的对象是不安全的,因此您无法在只允许安全动态更新的 Active Directory 集成的域中有效地使用该组,除非采取其他步骤允许对 DnsUpdateProxy 组成员创建的记录进行安全保护。
要防范不安全的记录或允许 DnsUpdateProxy 组成员在只允许安全动态更新的区域注册记录,您可以创建专用的用户帐户,并配置 DHCP 服务器使用该用户帐户凭据(用户名、密码和域)执行 DNS 动态更新。一个专用用户帐户的凭据可以由多个 DHCP 服务器使用。
专用用户帐户的唯一用途是向 DHCP 服务器提供用于 DNS 动态更新注册的凭据。在创建了专用用户帐户并为 DHCP 服务器配置帐户凭据后,每个 DHCP 服务器都在使用 DNS 动态更新代表 DHCP 客户端注册名称时提供这些凭据。您应该在要更新的区域的主 DNS 服务器所在的林中创建专用用户帐户。专用用户帐户也可以位于其他林中,只要该帐户所在的林与要更新的区域的主 DNS 服务器所在的林之间建立了林信任。
如果“DHCP 服务器”服务安装在域控制器上,您可以为 DHCP 服务器配置专用用户帐户的凭据,以防止服务器继承(也可能滥用)域控制器的权限。“DHCP 服务器”服务安装在域控制器上时,会继承域控制器的安全权限,并且有权更新或删除在安全的 Active Directory 集成的区域中注册的任何 DNS 记录。(其中包括由运行 Windows 2000 或 Windows Server 2003 *** 作系统的其他计算机(包括域控制器)安全注册的记录。)路由器上的"DNS代理"是什么意思?
答:即DNS转发,如果你在电脑上设定DNS指向路由器的内网地址,则路由器会将接收到的DNS查询请求转发到上一级的DNS服务器,比如ISP的DNS服务器
问题补充:我的DNS没有问题,主要是好像电信通过DNS服务器推送的了一些广告,很烦
所以想换掉DNS,可是我只能换本地链接上的DNS,路由器拨号本来不就会获得一个电信提供的DNS吗?
这两个DNS到底以哪个为准啊?
答:如果不想使用ISP的DNS服务器,可以使用openDNS,不过那个比较慢,除非它封锁了某些域名时才有必要使用。
至于路由获得的DNS地址,那是ISP自动分发的,路由器在做DNS代理转发时需要使用。
综上所述,你电脑上的DNS地址有下列选择:
1、设为自动获取,由路由器自动分发DNS地址,前提是要在路由中开启DHCP功能且填入了正确的上级DNS服务器地址。这个上级DNS服务器可以是ISP的DNS服务器,也可以是任何有效的公网DNS服务器地址。
2、手工设定,地址由三种选择:
1)设为路由器的内网地址,前提是路由器具有DNS转发(也称DNS代理)功能,且路由器本身获得正确的上级DNS地址,上级DNS地址同上。
2)设为ISP的DNS服务器地址,直接把DNS查询请求发到ISP的DNS服务器。这个应该是DNS解析速度最快的。
3)设为任何有效第三方的DNS服务器,比如openDNS,或者同一家ISP的不同地方DNS服务器,只要它速度够快。
如果路由器具有DNS转发功能,并且其自身获得正确的上级DNS地址,那么只要开启DHCP功能,电脑就可以自动获取路由器的内网地址为网关、DNS服务器,无需在电脑上做任何设置,这是最方便的方法。如果你的Windows 2000 Server仍然与一些较老的客户端连接着,那么你肯定需要通过手动方式配置DHCP以便为这些终端更新DNS记录。这里将介绍如何配置DHCP来给所有的客户端电脑更新DNS。
Windows 2000 客户端可以使用Microsoft Windows 2000 DNS服务器的动态特性。这意味着Windows 2000客户端可以在DNS中注册和更新它们自己的记录,但是其它客户端(Windows NT 4, Windows 9x等)都不能支持动态更新,因此也不能将自身的记录添加到DNS中。对于这些客户端来说,管理员只能手动添加,删除和更新DNS记录。
幸运的是,微软提供了一种方法可以让Windows 2000 Server DHCP服务在客户端更新DNS记录。在Windows 2000 DHCP安装完成后,DHCP服务器会更新客户端系统的PTR记录,并允许客户端自己更新A记录。对于Windows 2000客户端来说,这种方式很方便,因为这些客户端知道如何更新DNS记录,但是其它非Windows 2000的客户端并不支持动态更新。如果你的网络中还有一些非Windows 2000的客户端,你应该改变客户端的行为,以便DHCP可以同时更新客户端系统的A记录和PTR记录。
所有设置都可以在DHCP控制台的Scope Properties窗口中完成,具体做法是:进入Start | Programs | Administrative Tools | DHCP,右键点击Scope然后选择Properties | DNS。系统默认的选择是Update DNS Only If DHCP Clients Request,这表示DHCP服务器只会在客户端提出请求后更新DNS记录。而要让DHCP可以更新所有客户端的DNS记录(包括非Windows 2000系统),你需要选择Always Update DNS and Enable Updates To DNS Clients That Do Not Support Dynamic Update 这一项即可。
1、点击开始,打开控制面板,选择网络连接。
2、进入网络连接面板,可以看到本地连接(连接网线的网卡),然后选择点击右键,d出菜单,点击属性。
3、进入属性面板,可以看到有一个interner协议,选择然后点击属性进入。
4、进入interner协议属性面板,在这里可以设置DNS,自行修改即可。
5、设置完成后,最后点击保存即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)