控制面板Internet 时间’选项卡功能仅可用于工作组环境,如果Windows的计算机是作为域成员的话,在控制面板中日期和时间工具中没有 Internet 时间 选项卡。
默认情况下,主域控制器(PDC)是所有域内其他计算机的权威时间服务器。非域控制器的Windows 服务器和基于Windows 的计算机会尝试找到一个域控制器来同步网络时间。域控制器会尝试联系拥有主域控制器(PDC)Flexible Single Master Operation(FSMO)角色的域控制器。只有拥有 PDC FSMO 角色的域控制器能够查询外部时间源来设置时间。也就是说,在域中时间准确的根源是主域控制器的时间要准确。
Windows包含W32Time,它是 Kerberos 身份验证协议所需的时间服务工具。Windows 时间服务的目的是确保组织中运行Windows 2000或更高版本的所有计算机都使用同一个时间。Windows 2000 W32Time服务为在 Active Directory 域中运行的基于Windows 2000的计算机提供时间同步。W32Time服务能确保基于Windows 2000的客户端时钟与一个域中的域控制器保持同步。在建立域的时候,我们常常设置一个时间作为基准时间,Windows 时间服务提供了可以利用内部硬件时钟或外部时间源,从而确保时间更加精确。
问题1: 在域控上面设置default domain policy对全域设置了时间同步参数,其中MaxPollInterval=10,MinPollInterval =8;我想请教一下,同步的时间间隔只能从这两个参数定义吗,能不能自定义。
通常我们如果通过注册表的方式配置域的时间同步的话,按照下面的注册表设置来配置:
===主域控制器===
1 PDC宣布它为NTP服务器:
Path: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
Key Name: AnnounceFlags
Type: REG_DWORD (DWORD Value )
Data: 0x5
2 将服务器类型更改为NTP:
Path: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\Type
Key Name: Type
Type: REG_SZ(String Value)
Data: NTP
3 启用NTP服务器:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer
Key Name: Enabled
Type: REG_DWORD
Data: 1
4 指定哪个服务器充当NTP服务器:
Path: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters
Key Name: NtpServer
Type: REG_SZ(String Value)
Data: Peers (example: timewindowscom, 0x9)
5仅当我们的PDC计算机是虚拟机时,才需要设置此注册表。 如果它不是虚拟机,则没有有关此注册表的信息。
HLM\SYSTEM\CurrentControlSet\services\w32time\TimeProviders\VMICTimeProvider
Name: Enabled
Type: REG_DWORD
Data:0
===其他的域控制器和客户端===
Path: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\Type
Key Name: Type
Type: REG_SZ(String Value)
Data: NT5DS
Path: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
Key Name: AnnounceFlags
Type: REG_DWORD (DWORD Value )
Data: 0xa
之后,使用命令 net stop w32time && net start w32time 重新启动时间服务器。
0x1 为 NtpServer的Flag位,表示启用SpecialInterval。 它将会等待SpecialPollInterval 内设置的时间间隔再和时间源同步。
SpecialPollInterval
这个值指定了特定的取样时间间隔,当NtpServer值的SpecialInterval 0x1 标志设置后 (所以SpecialPollInterval只在时间同步方式为NTP时才有效,简单来讲,就是在PDC上此值才有意义),W32Time用这个时间间隔进行取样,单位为秒。默认值为3600秒。
Path: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters
Key Name: NtpServer
Type: REG_SZ(String Value)
Data: Peers (timewindowscom,0x9)
NTP server键值中,timeserver,0x9的含义,有如下解释:
0x9其实是两种标识的组合,即0x1和0x8。在w32time中,共有4种基础标识。
0x1 specialinterval
0x2 useasfallbackonly
0x4 symmatricactive
0x8 client
具体可以参考这个文章: Parameters\NtpServer
总结:一般如果我们的环境中没有出现时间同步问题的情况下不建议修改对应的值,保持默认的就可以。一般如果有时间跳变或者精度问题,才可能要调整这两个值。请问我们的环境是否出现了什么问题。我们是觉得时间同步精度不够还是什么其他原因需要去自定义这两个参数呢?
问题2: 还有我查看了客户端事件查看器并不是每一次到了间隔时间都会记录时间同步,一天之内只有2次或1次甚至没有记录。不知道该事件日志记录的原理是什么,想请高手指点一下,谢谢!
MaxPollInterval
这个值指定了在使用NT5DS同步机制时(简单的说就是按照域的结构和DC做时间同步),最大的时间取样时间间隔,单位为2的次方秒。 域控制器的默认值为为10(1024秒) ,域成员的默认值为15(32768秒),没有加入域的机器的默认值为15(32768秒)。如果当前值为F,即32768秒。
MinPollInterval
这个值指定了在使用NT5DS同步机制时(简单的说就是按照域的结构和DC做时间同步),最小的时间取样时间间隔,单位为2的次方秒。 域控制器的默认值为为6(64秒) ,域成员的默认值为10(1024秒),没有加入域的机器的默认值为10(1024秒)。如果当前值为A,即1024秒。
LargePhaseOffset (HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config\LargePhaseOffset):
当时间差小于LargePhaseOffset时,认为是同步的,默认值为5秒。
MaxAllowedPhaseOffset (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\MaxAllowedPhaseOffset):
当时间差大于LargePhaseOffset时,且当时间差超过MaxAllowedPhaseOffset这个值,则W32Time将直接将时间一次性修改正确;
当时间差大于LargePhaseOffset时,且当时间差小于MaxAllowedPhaseOffset这个值,则以渐进式的方式进行时间修改,直到时间正确为止。
总结:如果每次到了时间间隔确实不一定会记录时间同步,到了间隔时间会进行时间取样,如果没有超过阈值,就不需要同步,那么不同步就不会有记录。
不需要同步的情况:因为如果时间差小于LargePhaseOffset时, 认为是同步的,默认值为5秒。
需要同步的情况:
1 只有每次到了时间间隔,当时间差大于LargePhaseOffset时,且当时间差超过MaxAllowedPhaseOffset这个值,则W32Time将直接将时间一次性修改正确;
REF: >
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)