Acabei de notar por puro acaso que um dos meus comutadores Cisco 4500 está com o relógio dando errado: está mais de 2 minutos atrás , apesar do NTP aparentemente funcional. Na minha opinião, nem um único segundo deve ser considerado aceitável pelos sistemas envolvidos. Além disso, eu não teria notado a diferença nos diagnósticos, se não tivesse comparado com um simples relógio de parede.
Alguns detalhes
Aqui estão as informações de ntp para alguns dos meus hosts (10.0.99.1, 10.0.99.2, 10.0.1.119, 10.0.99.241) que estão se referindo parcialmente um ao outro para fallback, mas principalmente devem, em última análise, sincronizar com o 10.0.0.1, que novamente puxa o tempo de fora. Portanto, a discrepância de tempo não pode resultar de diferentes fontes de tempo originais. Como as observações me deixaram um tanto paranóica, "tem hora correta" dos seguintes meios: show clock
(ou date
) produzi uma saída que corresponde ao meu relógio de parede e ao relógio do sistema local (o que é bom de acordo com http://time.is ) com um erro certamente abaixo de 1 segundos (precisão de eu pressionar ENTER enquanto assisto meu relógio local)
10.0.1.119 (Ubuntu) tem hora correta
$ ntpq -np
remote refid st t when poll reach delay offset jitter
==============================================================================
+10.0.99.1 10.0.0.1 3 u 855 1024 377 0.904 -2.658 0.113
*10.0.0.1 130.149.17.8 2 u 266 1024 377 0.253 0.909 0.127
10.0.99.241 (Cisco 2960) tem hora correta
#sho ntp associations
address ref clock st when poll reach delay offset disp
*~10.0.99.1 10.0.0.1 3 28 64 377 1.462 85.288 19.758
+~10.0.99.2 10.0.1.119 4 29 64 377 1.297 83.515 5.369
* sys.peer, # selected, + candidate, - outlyer, x falseticker, ~ configured
10.0.99.2 (Cico 4500) tem hora correta
#sho ntp associations
address ref clock st when poll reach delay offset disp
+~10.0.99.1 10.0.0.1 3 6 1024 111 1.148 -1.618 42.875
*~10.0.1.119 10.0.0.1 3 31 1024 377 0.043 1.687 1.064
* sys.peer, # selected, + candidate, - outlyer, x falseticker, ~ configured
10.0.99.1 (Cisco 4500) fica para trás em cerca de 2 minutos 6 segundos
#sho ntp associations
address ref clock st when poll reach delay offset disp
*~10.0.0.1 130.149.17.8 2 274 1024 377 15.625 3.681 30.403
+~10.0.99.2 10.0.1.119 4 415 1024 376 15.625 0.855 33.276
* sys.peer, # selected, + candidate, - outlyer, x falseticker, ~ configured
#sho ntp status
Clock is synchronized, stratum 3, reference is 10.0.0.1
nominal freq is 250.0000 Hz, actual freq is 249.9988 Hz, precision is 2**6
reference time is DAD8B428.54C6BAEA (20:36:24.331 MESZ Sat May 7 2016)
clock offset is 3.6818 msec, root delay is 32.80 msec
root dispersion is 71.74 msec, peer dispersion is 30.40 msec
loopfilter state is 'CTRL' (Normal Controlled Loop), drift is 0.000004720 s/s
system poll interval is 1024, last update was 683 sec ago.
Questões
- Como é que 10.0.99.1 está tão longe?
- Como os sistemas sincronizados com 10.0.99.1 estão corretos?
- Como devo aprender com a saída da
sho ntp status
10.0.99.1 que o relógio está realmente totalmente fora de sincronia (comparado a todos os hosts e relógios de referência mencionados emsho ntp asso
)? Para mim, a saída parece totalmente um "Eu sou totalmente feliz" muito elaborado.
EDIT: Pela demanda popular, a produção desho clock detail
10.0.99.1
#sho clock detail
13:06:38.605 MESZ Tue May 10 2016
Time source is NTP
Summer time starts 02:00:00 MEZ Sun Mar 27 2016
Summer time ends 03:00:00 MESZ Sun Oct 30 2016
10.0.99.2
#sho clock detail
13:10:54.083 MESZ Tue May 10 2016
Time source is NTP
Summer time starts 02:00:00 MEZ Sun Mar 27 2016
Summer time ends 03:00:00 MESZ Sun Oct 30 2016
fonte
10.0.0.1
). Mas não acho que nenhuma das minhas observações possa explicar diretamente a causa do seu problema atual.Respostas:
Estou um pouco relutante em postar isso como resposta, porque a causa original ainda não está clara. No entanto, o problema parece estar resolvido - pelo menos por enquanto.
Após os comentários feitos por htm11h , decidi atualizar o firmware. E, de fato, agora que estou executando um firmware mais recente, o relógio parece coincidir com a hora correta.
Mas isso significa que o novo firmware foi a solução? Infelizmente não. Na minha primeira tentativa de carregar o novo firmware, esqueci de alterar o registro de configuração, que ainda estava no padrão de fábrica. Portanto, minha primeira reinicialização terminou na mesma imagem ROM original que o roteador estava executando há quase quatro anos (ou seja, desde a inicialização). E, no entanto, isso foi suficiente para que o relógio fizesse um grande ajuste e depois continuasse sincronizado. Isso sugere que uma simples reinicialização pode ter ajudado - temporariamente. Por sua vez, isso significa que o tempo agora correto mostrado com o firmware mais recente ainda pode se afastar do tempo ntp nos próximos anos. Levará alguns dias até que eu possa dizer com segurança se o relógio perdeu ou não cerca de 5 segundos por dia ...
Por enquanto, o caso está encerrado.
fonte
Trabalhei bastante com o projeto NTP Pool desde meados dos anos 90 e executei vários servidores NTP Stratum-1 GPS Synced aqui. Como outros já disseram, você precisa de mais de 2 servidores para obter tempo. Eu costumo usar 4 aqui pelas razões expostas por Ron Maupin acima. Além disso, conforme listado, você precisa procurar loops e definir itens como servidores versus pares.
O desvio de tempo pode ser devido a um bug conhecido no IOS que foi corrigido nesta atualização do IOS, que trata do ntp.drift não ser excluído ou atualizado corretamente e, portanto, o problema do desvio. Além disso, 4 anos sem reinicialização ou atualização devem ter deixado você em um local bastante ruim em termos de segurança, pois as atualizações de segurança do IOS são bastante frequentes.
Aqui está um excelente post sobre como configurar o NTP no Cisco IOS http://packetlife.net/blog/2011/mar/28/cisco-ios-clocks-and-ntp/
Espero que isso seja útil. Por favor, pergunte se você tem mais perguntas ou problemas.
fonte
Divulgação completa: ocasionalmente, apenas brinquei com as configurações do switch, e de modo algum sou um especialista em NTP.
Dito isso, eu costumava ver o daemon NTP nos sistemas RHEL 5.x (sim, vou voltar, mas você disse que seu switch tinha uma imagem de ~ 4 anos ...) ficar preso em um estado "feliz" , onde parecia achar que estava perfeitamente sincronizado, mas claramente não estava. Usaríamos uma sessão do ClusterSSH para executar "date" em todos os sistemas simultaneamente, e isso às vezes mostraria até 5 minutos de desvio entre os sistemas. Se bem me lembro, só conseguimos resolver o problema reiniciando o daemon e, finalmente, fizemos o cron reiniciar o serviço todas as noites ...
Não é de forma alguma uma solução ideal, mas você pode adotar uma abordagem semelhante com um trabalho cron para conectar-se ao comutador e iniciar uma reinicialização ou, de alguma forma, "chutar" o daemon NTP no comutador?
Espero que isto ajude!
fonte