本文分步介绍了如何在 Windows XP 中配置 Windows 时间服务以使用内部硬件时钟和外部时间源。本文还讨论了可靠的时间源配置、手动指定的同步、所有可用的同步以及一些重要的 Windows 时间服务注册表项(如“MaxNegPhaseCorrection”和“MaxPosPhaseCorrection”注册表项)。
回到顶端
本文分步介绍了如何在 Windows XP 中配置 Windows 时间服务以使用内部硬件时钟和外部时间源。
我们强烈建议您将权威时间服务器配置为从硬件源中获取时间。当您将权威时间服务器配置为与 Internet 时间源同步时,不会有任何身份验证。我们还建议您调低服务器和独立客户端的时间校准设置。这些建议可以为您的域提供更准确的时间和更高的安全性。
本文包含一些解决常见疑难问题的提示,并讨论了可靠的时间源配置、手动指定的同步、所有可用的同步以及“MaxNegPhaseCorrection”和“MaxPosPhaseCorrection”注册表项。
回到顶端
回到顶端
要配置 Windows 时间服务以使用内部硬件时钟,您可以更改权威时间服务器上的声明标志。更改声明标志可以强制计算机将自己声明为可靠的时间源,从而使用内置的互补金属氧化物半导体 (CMOS) 时钟。要配置 Windows 时间服务以使用内部硬件时钟,请按照下列步骤操作:
警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能导致严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证您可以解决这些问题。修改注册表需要您自担风险。
1. |
单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。 |
2. |
找到下面的注册表项然后单击它:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\ |
3. |
在右窗格中,右键单击“AnnounceFlags”,然后单击“修改”。 |
4. |
在“编辑 DWORD 值”对话框中的“数值数据”下,键入 5,然后单击“确定”。 |
5. |
启用 NTPServer。
a. |
找到并单击下面的注册表子项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer\ |
b. |
在右窗格中,右键单击“Enabled”,然后单击“修改”。 |
c. |
在“编辑 DWORD 值”对话框中的“数值数据”下,键入 1,然后单击“确定”。 | |
6. |
退出注册表编辑器。 |
7. |
在命令提示符处,键入以下命令以重新启动 Windows 时间服务,然后按 Enter:
net stop w32time && net start w32time |
8. |
要根据时间服务器重新设置本地计算机的时间,请在除时间服务器以外的所有计算机上运行以下命令:
w32tm /resync /rediscover |
注意:不得将时间服务器配置为与其自身同步。如果将时间服务器配置为与其自身同步,则会在应用程序日志中记录以下事件:
时间提供程序 NtpClient 不能访问,或当前正在从 192.168.1.1 (ntp.m|0x0|192.168.1.1:123->192.168.1.1:123) 接收无效的时间数据。
在尝试联系它 8 次以后没有收到来自手动对等端 192.168.1.1 的响应。此对等端将不再被作为时间源,并且 NtpClient 将尝试发现一个新的对等端以与其同步。
时间服务提供程序 NtpClient 配置为从一个或多个时间源获得时间。但是,没有一个源可以访问。在 960 分钟内不会进行联系时间源的尝试。NtpClient 没有准确时间的时间源。
如果时间服务器使用内部时间源运行,则会在应用程序日志中记录以下事件:
时间提供程序 NtpClient:此机器配置为用域层级确定它的时间源,但它已经是在林的根目录域的 PDC 仿真,因此在域层级没有机器在它上面以用作时间源。建议您在根域上配置一个可靠的时间服务,或者手动配置 PDC 以与外部时间源同步。否则,此机器将在域层级中作为权威的时间源。如果没有为此计算机配置或使用外部时间源,您可以选择禁用 NtpClient。
这段文字告诉您:时间服务器没有被配置为使用外部时间源,您可以忽略时间服务器。
有关“w32tm”命令的更多信息,请在命令提示符处键入以下命令:
w32tm /?
回到顶端
要将 Windows 时间服务配置为与外部时间源同步,请按照下列步骤操作:
1. |
将服务器类型更改为 NTP。为此,请按照下列步骤操作:
a. |
单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。 |
b. |
找到并单击下面的注册表子项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\ |
c. |
在右窗格中,右键单击“Type”,然后单击“修改”。 |
d. |
在“编辑值”对话框中的“数值数据”下,键入 NTP,然后单击“确定”。 | |
2. |
将 AnnounceFlags 设置为 5。为此,请按照下列步骤操作:
a. |
找到并单击下面的注册表子项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\ |
b. |
在右窗格中,右键单击“AnnounceFlags”,然后单击“修改”。 |
c. |
在“编辑 DWORD 值”对话框中的“数值数据”下,键入 5,然后单击“确定”。 | |
3. |
选择轮询间隔。为此,请按照下列步骤操作:
a. |
找到并单击下面的注册表子项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient\ |
b. |
在右窗格中,右键单击“SpecialPollInterval”,然后单击“修改”。 |
c. |
在“编辑 DWORD 值”对话框中的“数值数据”下,键入 TimeInSeconds,然后单击“确定”。
注意:TimeInSeconds 是一个占位符,应替换为您希望各次轮询所间隔的秒数。建议值为 900(十进制)。该值将时间服务器配置为每隔 15 分钟轮询一次。 | |
4. |
启用 NTPServer。为此,请按照下列步骤操作:
a. |
找到并单击下面的注册表子项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer\ |
b. |
在右窗格中,右键单击“Enabled”,然后单击“修改”。 |
c. |
在“编辑 DWORD 值”对话框中的“数值数据”下,键入 1,然后单击“确定”。 | |
5. |
指定时间源。为此,请按照下列步骤操作:
a. |
找到并单击下面的注册表子项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\NtpServer |
b. |
在右窗格中,右键单击“NtpServer”,然后单击“修改”。 |
c. |
在“编辑值”的“数值数据”框中键入 Peers,然后单击“确定”。 | |
6. |
配置时间校准设置。为此,请按照下列步骤操作:
a. |
找到并单击下面的注册表子项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\ |
b. |
在右窗格中,右键单击“MaxPosPhaseCorrection”,然后单击“修改”。 |
c. |
在“编辑 DWORD 值”对话框中的“基数”下,单击“十进制”。 |
d. |
在“编辑 DWORD 值”对话框中的“数值数据”下,键入 TimeInSeconds,然后单击“确定”。
注意:TimeInSeconds 是一个占位符,应替换为适当的值,如一个小时 (3600) 或 30 分钟 (1800)。您选择的值将取决于轮询间隔、网络状况和外部时间源。 |
e. |
找到并单击下面的注册表子项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\ |
f. |
在右窗格中,右键单击“MaxNegPhaseCorrection”,然后单击“修改”。 |
g. |
在“编辑 DWORD 值”对话框中的“基数”下,单击“十进制”。 |
h. |
在“编辑 DWORD 值”对话框中的“数值数据”下,键入 TimeInSeconds,然后单击“确定”。
注意:TimeInSeconds 是一个占位符,应替换为适当的值,如一个小时 (3600) 或 30 分钟 (1800)。您选择的值将取决于轮询间隔、网络状况和外部时间源。 | |
7. |
退出注册表编辑器。 |
8. |
在命令提示符处,键入以下命令以重新启动 Windows 时间服务,然后按 Enter:
net stop w32time && net start w32time |
9. |
在每个计算机(域控制器除外)上运行以下命令,以便根据时间服务器重新设置计算机的时间:
w32tm /resync /rediscover |
有关“w32tm”命令的更多信息,请在命令提示符处键入以下命令:
w32tm /?
注意:SNTP 使用用户数据报协议 (UDP) 端口 123。如果此端口不对 Internet 开放,则无法将您的服务器与 Internet SNTP 服务器同步。
回到顶端
如果某个计算机被配置为可靠的时间源,则会将其标识为时间服务的根。时间服务的根是域的权威服务器。通常,权威服务器被配置为从外部 NTP 服务器或硬件设备检索时间。您可以将一台时间服务器配置为可靠的时间源,以优化在整个域层级中传输时间的方式。如果将某个域控制器配置为可靠的时间源,Net Logon 服务将在该域控制器登录到网络时将其声明为可靠的时间源。当其他域控制器查找与之同步的时间源时,它们会优先选择已有的可靠时间源。
回到顶端
在使用手动指定的同步时,您可以指定计算机从单个对等端或对等端列表中获取时间。如果该计算机不是域的成员,则必须手动将其配置为与指定的时间源同步。默认情况下,属于域成员的计算机会被配置为从域层级同步。手动指定的同步对域的林根或未加入域的计算机非常有用。如果手动指定外部 NTP 服务器与域的权威计算机同步,则可以获得可靠的时间。不过,将域的权威计算机配置为与硬件时钟同步实际上是一种更好的方法,可以使您的域获得较高的准确性和安全性。
如果没有硬件时间源,W32time 会被配置为 NTP 类型。您必须重新配置 MaxPosPhaseCorrection 和 MaxNegPhaseCorrection 注册表项。建议将该值设置为 15 分钟或更低,这取决于时间源、网络状况和安全要求。这也适用于时间同步子网中被配置为林根时间源的任何可靠的时间源。有关这两个注册表项的更多信息,可以在下文的“
”一节中找到。
注意:除非为手动指定的时间源编写特定的时间提供程序,否则不会对其进行身份验证,因此它们很容易受到攻击。另外,如果计算机与手动指定的时间源同步,而不是与它的身份验证域控制器同步,则这两台计算机可能不同步,这将导致 Kerberos 身份验证失败。还会导致其他需要网络身份验证的操作失败,如打印或文件共享。只要将林根配置为与外部时间源同步,则林中的所有其他计算机就会彼此同步,这使得重现攻击很难进行。
回到顶端
对于网络用户来说,“所有可用的同步机制”选项是最有价值的同步方法。这种方法可实现与域层级的同步,并且根据具体的配置,它还可以在域层级不可用时提供备用的时间源。如果客户端无法与域层级同步时间,时间源将自动故障切换为“NtpServer”设置指定的时间源。这种同步方法最有可能为客户端提供准确的时间。
回到顶端
以下注册表项位于 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\
注册表项 |
MaxPosPhaseCorrection |
路径 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config |
注意 |
该项指定服务可进行的最大正时间校准量(以秒为单位)。如果服务确定某个更改幅度大于所需的幅度,它将记录一个事件。特殊情况:0xFFFFFFFF 表示总是校准时间。域成员的默认值是 0xFFFFFFFF。独立客户端和服务器的默认值是 54,000(15 小时)。 |
注册表项 |
MaxNegPhaseCorrection |
路径 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config |
注意 |
该项指定服务可进行的最大负时间校准量(以秒为单位)。如果服务确定某个更改幅度大于所需的幅度,它将转而记录一个事件。特殊情况:-1 表示总是校准时间。域成员的默认值是 0xFFFFFFFF。独立客户端和服务器的默认值是 54,000(15 小时)。 |
注册表项 |
MaxPollInterval |
路径 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config |
注意 |
该项指定系统轮询间隔所允许的最大间隔(单位是对数表示的秒)。请注意,尽管系统必须根据预定的间隔进行轮询,但是提供程序可以根据请求拒绝生成示例。域成员的默认值是 10。独立客户端和服务器的默认值是 15。 |
注册表项 |
SpecialPollInterval |
路径 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient |
注意 |
该项指定手动对等端的特殊轮询间隔(以秒为单位)。当启用 SpecialInterval 0x1 标志时,W32Time 将使用此轮询间隔而非操作系统确定的轮询间隔。域成员的默认值是 3,600。独立客户端和服务器的默认值是 604,800。 |
注册表项 |
MaxAllowedPhaseOffset |
路径 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config |
注意 |
该项指定 W32Time 尝试使用时钟速率调整计算机时钟的最大偏移(以秒为单位)。当偏移大于该速率时,W32Time 将直接设置计算机时钟。域成员的默认值是 300。独立客户端和服务器的默认值是 1。
信息适用于:
• |
Microsoft Windows XP Professional Edition | |