Resolvido O problema era o Hyper-V nessa máquina. Eu removi o Hyper-V, instalei o VMware Server e executei a mesma VM. Os problemas de sincronização de tempo desapareceram (diferença <100 ms após um dia).
Minha configuração é assim:
HYV1 - HyperV machine (non domain) - sync irrelevant
AD1 - VM AD server on HYV1, sync'd to time.nist.gov. HyperV time sync off.
S1 - Physical machine, sync'd to domain.
S2 - Physical machine running HyperV, sync'd to domain.
V1 - Linux VM machine on S2, sync'd to AD1. No HyperV integration.
AD1 e S1 têm sincronização fina - o gráfico de strip mostra menos de 100ms de diferença.
S2 deriva como um louco. Aqui está um pouco do stripchart contra o AD1:
18:33:22 d:+00.0010138s o:+05.4101899s
18:33:24 d:+00.0010138s o:+05.4319765s
18:33:26 d:+00.0000000s o:+05.4788429s
18:33:28 d:+00.0000000s o:+05.6089942s
18:33:30 d:+00.0010138s o:+05.7240269s
18:33:32 d:+00.0000000s o:+06.0421911s
18:33:34 d:+00.0081104s o:+06.5613708s
18:33:37 d:+00.0000000s o:+06.9096594s
18:33:39 d:+00.0000000s o:+06.8867838s
18:33:41 d:+00.0010127s o:+06.8936401s
Em 20 segundos, flutuou mais de um segundo. Se eu redefini-lo manualmente para 1s, em alguns minutos ele voltará à deriva cerca de 2 segundos. Durante a noite passou de ~ 2s para ~ 5s. A VM do Linux dentro do S2 possui sincronização perfeita com o AD1.
Aqui está a configuração:
C:\Users\mgg>w32tm /dumpreg /subkey:Parameters
Value Name Value Type Value Data
------------------------------------------------------------
ServiceDll REG_EXPAND_SZ %systemroot%\system32\w32time.dll
ServiceMain REG_SZ SvchostEntry_W32Time
ServiceDllUnloadOnStop REG_DWORD 1
Type REG_SZ NT5DS
NtpServer REG_SZ ad01.mydomain ad02.mydomain
C:\Users\mgg>w32tm /dumpreg /subkey:Config
Value Name Value Type Value Data
-----------------------------------------------------------
FrequencyCorrectRate REG_DWORD 4
PollAdjustFactor REG_DWORD 5
LargePhaseOffset REG_DWORD 50000000
SpikeWatchPeriod REG_DWORD 900
LocalClockDispersion REG_DWORD 9
HoldPeriod REG_DWORD 5
PhaseCorrectRate REG_DWORD 1
UpdateInterval REG_DWORD 30000
EventLogFlags REG_DWORD 2
AnnounceFlags REG_DWORD 5
TimeJumpAuditOffset REG_DWORD 28800
MinPollInterval REG_DWORD 2
MaxPollInterval REG_DWORD 8
MaxNegPhaseCorrection REG_DWORD -1
MaxPosPhaseCorrection REG_DWORD -1
MaxAllowedPhaseOffset REG_DWORD 300
Olhei para o log de eventos e, além dos avisos sobre sincronização (depois que fica fora de sincronia), não há outros avisos.
Como posso solucionar esse problema? É a única máquina que está tendo esse problema. Todas as outras máquinas (físicas e virtuais) estão indo bem.
Editar: para esclarecer: A VM (AD1) tem a integração desativada e sincronizada com time.nist.gov. AD1 está bem. É a máquina física S1 que não pode sincronizar com o AD1 e se desloca por todo o lado. Todos os outros servidores físicos são capazes de sincronizar com o AD1 muito bem.
Atualizar Portanto, parece ser um problema de execução da VM. O relógio desliza lentamente com a VM desligada. Ligado, ele imediatamente começa a perder segundos. Troquei a VM para usar apenas metade dos recursos, e isso parece ter mitigado um pouco, por enquanto. Obrigado!