Estou usando o NetTime , há muitos anos, como cliente e servidor.
Este software é um cliente NTP primário, mas funciona bem como servidor NTP dentro de uma LAN (opção: permitir que outro computador sincronize com este computador).
Estou procurando um servidor NTP para Windows Server 2003/2008. Nós já testamos o Windows Time Server, mas nossos testes mostram que não é muito preciso, vemos diferenças de tempo de até 500ms. A diferença máxima de tempo que podemos permitir para nossa aplicação é de aproximadamente 100ms.
Agora, já usamos o Meinberg NTPd para Windows. Ele funciona muito bem, exceto que temos um grande problema: se houver um problema de conexão de rede entre o cliente e o servidor, o servidor ntp estará em pânico. Ele não dará mais tempo ao cliente até que reinicie o serviço ntp. Este é um grande problema que nos causou alguns problemas. Estava funcionando bem por meses até que houvesse um problema de rede que não notamos, só percebemos depois de uma semana quando a diferença de tempo já era de 30 segundos. nos clientes.
Por favor, sugira algum servidor NTP alternativo para o Windows. Eu fiz o Google, mas recebo muitos resultados de pesquisa não relacionados.
Editar: Até agora, a versão do windows ntpd foi muito precisa e eu gostaria de ficar com ela. O único problema é o "estado de pânico" após uma desconexão da rede. Talvez alguns saibam aqui qual é a causa disso e como consertar isso. Além disso, esqueci de mencionar que temos uma configuração de servidor / cliente assim:
Servidor1 - > Servidor2 - > Servidor3 - > Client1 - > Client2 - > Client3
Assim, o Server2 obtém seu tempo no Server1, o Server3 obtém seu tempo no Server2 e os Clientes obtêm seu tempo no Server3. Além disso, há clientes conectados diretamente ao servidor2. É importante que todos os Servidores e Clientes tenham exatamente o mesmo tempo (dentro de ~ 100ms)
Agora havia um problema de rede com o Server3 e seus clientes. Os servidores executam a porta ntpd para o Windows, que atua como servidor e cliente NTP. Os clientes possuem o Dimension4 como cliente NTP. Após o problema de rede, a mensagem de erro em D4 era algo como isto (fora da minha cabeça, não tem a mensagem de erro exata):
Resposta do servidor: o servidor está em um estado de pânico (não foi possível sincronizar o relógio)
Eu li os documentos ntpd, e a única menção de "pânico" é quando a diferença de tempo é de 10000 segundos, o que fará com que saia do servidor ntpd, mas não foi esse o caso. Além disso, há uma opção de linha de comando "-g" para desabilitar a saída de pânico, mas ela já está definida por padrão.
Alguma idéia do que poderia causar o estado de pânico e como se livrar dele da próxima vez?
Estou usando o NetTime , há muitos anos, como cliente e servidor.
Este software é um cliente NTP primário, mas funciona bem como servidor NTP dentro de uma LAN (opção: permitir que outro computador sincronize com este computador).
Nós vemos muito melhor do que 500 ms a partir do W32Time, mais como 16ms, que é a resolução dos temporizadores do sistema Windows. Isso é medido por servidores NTPd reais do stratum-2 do Linux na mesma LAN gigabit. Google "ferramentas e configurações de serviço de horário do Windows" e leia sobre a configuração "updateinteval", que pode ser modificada por meio de diretiva de grupo ou diretamente no registro. Não é possível verificar agora, mas lembro-me que temos esse definido para 100 para todos os nossos servidores, que é o padrão para os controladores de domínio, mas não para outros membros do domínio do Windows.
Atualizado: Na verdade, temos esse valor definido como 100 para todos os nossos servidores. Os detalhes da configuração do UpdateInterval:
UpdateInterval
Registry path: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
Version: Windows XP, Windows Vista, Windows 7, Windows Server 2003, Windows Server 2003 R2, Windows Server 2008, and Windows Server 2008 R2.
This entry specifies the number of clock ticks between phase correction adjustments. The default value for domain controllers is 100. The default value for domain members is 30,000. The default value for stand-alone clients and servers is 360,000.
Como você pode ver, por padrão o W32Time apenas "orienta" o relógio uma vez a cada 30.000 tiques para controladores que não são de domínio, ou muito pior se eles não forem membros de um domínio. Um tick no Windows é geralmente 1/64 de segundo dependendo do hardware, o que significa que o relógio só está sendo ajustado uma vez a cada 8 minutos na configuração padrão. Isso é bom para a maioria dos aplicativos, mas não é bom para aplicativos sensíveis ao tempo.
Mais informações podem ser encontradas aqui: link
A lista de referência de todos os softwares de tempo listados pelo NIST é aqui . O que eu usei no passado é o servidor de relógio. Também recomendo que você altere sua topologia de sincronização. server1 deve ser a fonte de todos os tempos na rede (com o servidor 2 e 3 como backups). Os clientes só devem sincronizar se não houver servidor disponível.
Tags ntp