域时间偏差

域时间偏差

几个月前,我尝试在我们的环境中理顺时间,但始终无法让它正常工作。我们有 4 个域控制器,时间差似乎总是在 30 秒到 300 秒之间。它似乎会随机地自我纠正,然后又开始漂移。工作站上的时间似乎总是差 1 到 2 分钟。

我使用了本指南。https://community.spiceworks.com/how_to/65413-configure-dc-to-synchronize-time-with-external-ntp-server

以下是一些附加信息。

PDCe:物理机

DC2:虚拟机

DC3:虚拟机

DC4:虚拟机

虚拟 DC 设置为不与其主机同步时间。

这是来自每个 DC 的 w32tm /query /configuration。

磷酸二酯酶


EventLogFlags: 2 (Local)
AnnounceFlags: 5 (Local)
TimeJumpAuditOffset: 28800 (Local)
MinPollInterval: 6 (Local)
MaxPollInterval: 10 (Local)
MaxNegPhaseCorrection: 172800 (Local)
MaxPosPhaseCorrection: 172800 (Local)
MaxAllowedPhaseOffset: 300 (Local)

FrequencyCorrectRate: 4 (Local)
PollAdjustFactor: 5 (Local)
LargePhaseOffset: 50000000 (Local)
SpikeWatchPeriod: 900 (Local)
LocalClockDispersion: 10 (Local)
HoldPeriod: 5 (Local)
PhaseCorrectRate: 7 (Local)
UpdateInterval: 100 (Local)

FileLogName: C:\Windows\Temp\w32time.log (Local)
FileLogEntries: 0-116 (Local)
FileLogSize: 268435456 (Local)

[TimeProviders]

NtpClient (Local)
DllName: C:\Windows\SYSTEM32\w32time.DLL (Local)
Enabled: 1 (Local)
InputProvider: 1 (Local)
AllowNonstandardModeCombinations: 1 (Local)
ResolvePeerBackoffMinutes: 15 (Local)
ResolvePeerBackoffMaxTimes: 7 (Local)
CompatibilityFlags: 2147483648 (Local)
EventLogFlags: 1 (Local)
LargeSampleSkew: 3 (Local)
SpecialPollInterval: 3600 (Local)
Type: NTP (Local)
NtpServer: time.nist.gov,0x1 time-a-g.nist.gov,0x1 time-a-wwv.nist.gov,0x1 time-a-b.nist.gov,0x1 (Local)

NtpServer (Local)
DllName: C:\Windows\SYSTEM32\w32time.DLL (Local)
Enabled: 1 (Local)
InputProvider: 0 (Local)
AllowNonstandardModeCombinations: 1 (Local)

DC2


EventLogFlags: 2 (Local)
AnnounceFlags: 10 (Local)
TimeJumpAuditOffset: 28800 (Local)
MinPollInterval: 6 (Local)
MaxPollInterval: 10 (Local)
MaxNegPhaseCorrection: 172800 (Local)
MaxPosPhaseCorrection: 172800 (Local)
MaxAllowedPhaseOffset: 300 (Local)

FrequencyCorrectRate: 4 (Local)
PollAdjustFactor: 5 (Local)
LargePhaseOffset: 50000000 (Local)
SpikeWatchPeriod: 900 (Local)
LocalClockDispersion: 10 (Local)
HoldPeriod: 5 (Local)
PhaseCorrectRate: 7 (Local)
UpdateInterval: 100 (Local)


[TimeProviders]

NtpClient (Local)
DllName: C:\Windows\SYSTEM32\w32time.DLL (Local)
Enabled: 1 (Local)
InputProvider: 1 (Local)
CrossSiteSyncFlags: 2 (Local)
AllowNonstandardModeCombinations: 1 (Local)
ResolvePeerBackoffMinutes: 15 (Local)
ResolvePeerBackoffMaxTimes: 7 (Local)
CompatibilityFlags: 2147483648 (Local)
EventLogFlags: 1 (Local)
LargeSampleSkew: 3 (Local)
SpecialPollInterval: 1024 (Local)
Type: NT5DS (Local)

NtpServer (Local)
DllName: C:\Windows\SYSTEM32\w32time.DLL (Local)
Enabled: 1 (Local)
InputProvider: 0 (Local)
AllowNonstandardModeCombinations: 1 (Local)

VMICTimeProvider (Local)
DllName: C:\Windows\System32\vmictimeprovider.dll (Local)
Enabled: 0 (Local)
InputProvider: 1 (Local)

DC3


EventLogFlags: 2 (Local)
AnnounceFlags: 10 (Local)
TimeJumpAuditOffset: 28800 (Local)
MinPollInterval: 6 (Local)
MaxPollInterval: 10 (Local)
MaxNegPhaseCorrection: 172800 (Local)
MaxPosPhaseCorrection: 172800 (Local)
MaxAllowedPhaseOffset: 300 (Local)

FrequencyCorrectRate: 4 (Local)
PollAdjustFactor: 5 (Local)
LargePhaseOffset: 50000000 (Local)
SpikeWatchPeriod: 900 (Local)
LocalClockDispersion: 10 (Local)
HoldPeriod: 5 (Local)
PhaseCorrectRate: 7 (Local)
UpdateInterval: 100 (Local)


[TimeProviders]

NtpClient (Local)
DllName: C:\Windows\system32\w32time.dll (Local)
Enabled: 1 (Local)
InputProvider: 1 (Local)
CrossSiteSyncFlags: 2 (Local)
AllowNonstandardModeCombinations: 1 (Local)
ResolvePeerBackoffMinutes: 15 (Local)
ResolvePeerBackoffMaxTimes: 7 (Local)
CompatibilityFlags: 2147483648 (Local)
EventLogFlags: 1 (Local)
LargeSampleSkew: 3 (Local)
SpecialPollInterval: 1024 (Local)
Type: NT5DS (Local)

NtpServer (Local)
DllName: C:\Windows\system32\w32time.dll (Local)
Enabled: 1 (Local)
InputProvider: 0 (Local)
AllowNonstandardModeCombinations: 1 (Local)

VMICTimeProvider (Local)
DllName: C:\Windows\System32\vmictimeprovider.dll (Local)
Enabled: 0 (Local)
InputProvider: 1 (Local)

DC4


EventLogFlags: 2 (Local)
AnnounceFlags: 10 (Local)
TimeJumpAuditOffset: 28800 (Local)
MinPollInterval: 6 (Local)
MaxPollInterval: 10 (Local)
MaxNegPhaseCorrection: 172800 (Local)
MaxPosPhaseCorrection: 172800 (Local)
MaxAllowedPhaseOffset: 300 (Local)

FrequencyCorrectRate: 4 (Local)
PollAdjustFactor: 5 (Local)
LargePhaseOffset: 50000000 (Local)
SpikeWatchPeriod: 900 (Local)
LocalClockDispersion: 10 (Local)
HoldPeriod: 5 (Local)
PhaseCorrectRate: 7 (Local)
UpdateInterval: 100 (Local)


[TimeProviders]

NtpClient (Local)
DllName: C:\Windows\SYSTEM32\w32time.DLL (Local)
Enabled: 1 (Local)
InputProvider: 1 (Local)
CrossSiteSyncFlags: 2 (Local)
AllowNonstandardModeCombinations: 1 (Local)
ResolvePeerBackoffMinutes: 15 (Local)
ResolvePeerBackoffMaxTimes: 7 (Local)
CompatibilityFlags: 2147483648 (Local)
EventLogFlags: 1 (Local)
LargeSampleSkew: 3 (Local)
SpecialPollInterval: 1024 (Local)
Type: NT5DS (Local)

NtpServer (Local)
DllName: C:\Windows\SYSTEM32\w32time.DLL (Local)
Enabled: 1 (Local)
InputProvider: 0 (Local)
AllowNonstandardModeCombinations: 1 (Local)

VMICTimeProvider (Local)
DllName: C:\Windows\System32\vmictimeprovider.dll (Local)
Enabled: 0 (Local)
InputProvider: 1 (Local)

有人有什么想法吗?我将非常感激任何帮助。

答案1

您是说 DC 也正在脱离 PDCE 吗?

首先,我建议在PDCE上配置对等列表以使用0x8而不是0x1。

w32tm.exe /config /syncfromflags:manual /manualpeerlist:time.nist.gov,0x8 time-a-g.nist.gov,0x8 [...] /reliable:yes /update

在系统事件日志中,PDCE 是否显示其已成功同步时间?我建议过滤日志源以显示来自的事件Time-Service

您配置的每个对等点都应该有一个事件 35,以显示它们正在同步时间。然后是事件三十七每个对等体都表示 PDCE 正在接收有效时间。您可能需要运行w32tm /resync /rediscover或重新启动服务才能触发事件。

也检查同行:w32tm /query /peers

如果显示State: pending,请运行w32tm /query /status并检查Last Successful Sync Time过去很长时间(例如超过一小时)的每个对等点。如果是这种情况,则可能是网络问题或源有问题。

接下来,PDCE 是否显示事件 139,然后是事件 143(事件 12 可能会在 143 之前作为临时警告出现),表明它正在作为时间源进行广告宣传,然后是好的时间源?此时,PDCE 正在正确通告。或者应该如此。重新发现/重新启动服务后,这可能需要几分钟。确保143 事件之后发生 144 事件 - 这意味着 PDCE 已停止作为时间源进行宣传。

接下来,在其他 DC 上运行w32tm /query /peers。检查是否只有一个对等点 (PDCE)、状态是否为活动状态,以及剩余时间是否小于 PeerPoll\HostPoll 间隔。对于您的 DC,该间隔似乎是 1024。

C:\> w32tm /query /peers
#Peers: 1

Peer: PDCE.xxx.au
State: Active
Time Remaining: 593.4024152s
Mode: 1 (Symmetric Active)
Stratum: 2 (secondary reference - syncd by (S)NTP)
PeerPoll Interval: 10 (1024s)
HostPoll Interval: 10 (1024s)

在系统事件日志中,最后的 Time-Source 事件应该是 35 或 37,表示 DC 正在从 PDCE 获取时间。应该有一个 139 事件,表示它正在作为时间源进行宣传。应该有不是成为 143 事件(广告作为好的时间源),除非最近出现了 144 警告(即它已停止宣传为“良好”)。

如果以上任何问题,请检查 DC 之间的 NTP 端口是否打开 -UDP123. 显然,如果 PDCE 没有从其上游源获取时间,也请检查端口。您可能应该使用本地时间源(我们使用由网络团队管理的 DNS/DHCP 解决方案内部配置的时间源,该解决方案位于我们地区的 Stratum 1 时钟的下游)。

如果最近时间事件是 DC - 35/37 上的警告或错误,那么就不是非 PDCE 上最近时间事件了,那么这些就值得调查。

如果所有 DC 的时间同步都正常,那么下一步就是查看客户端。

顺便说一句,最好使用组策略来配置它。我强烈建议有一个针对 PDCE 的 GPO,这样如果您移动角色,时间配置也会随之移动。我还有一个“默认”时间 GPO,只是作为 DC 策略中的后备 - 它只是通常的默认值 - 但实际上是为了确保在 FSMO 移动后,前 PDCE 可以恢复常规时间配置。但是一旦 DC 满意,就可以稍后再完成 GPO。

相关内容