Introdução
O NTP é um protocolo para sincronização dos relógios dos computadores, ou seja, ele define um jeito para um grupo de computadores conversar entre si e acertar seus relógios, baseados em alguma fonte precisa de tempo, como os relógios atômicos do Observatório Nacional, que definem a Hora Legal Brasileira.
Em sua versão mais completa, o NTP é bastante robusto e preciso. Ele consulta vários outros computadores para saber a hora certa, e consegue distinguir os que falam a verdade e os que estão enganados. Ele também aprende se o relógio de seu computador é viciado em adiantar-se ou atrasar-se e usa essa informação para ajustá-lo constantemente.
Com o NTP é fácil manter o relógio do computador sempre com a hora certa, com exatidão de alguns milésimos de segundo, e só há vantagens em se fazer isso!
Instalação
Debian GNU/Linux e sistemas que usam apt (Ubuntu, Kurumin, Conectiva, etc)
root@host# apt-get update
root@host# apt-get install ntp
Após instalar o ntp, crie o arquivo ntp.drift com o comando:
# touch /etc/ntp.drift
Se a hora de seu computador estiver com um erro maior do que 16min o ntp pode não funcionar. Se for o caso, ajuste a hora manualmente, antes de iniciar o ntpd. Ou então execute o ntpd com os parâmetros abaixo, para um primeiro ajuste, e depois inicie o serviço:
# ntpd -q -g
Substitua o conteúdo do arquivo de configuração padrão /etc/ntp.conf
pela configuração abaixo.
# "memoria" para o escorregamento de frequencia do micro # pode ser necessario criar esse arquivo manualmente com # o comando touch ntp.drift driftfile /etc/ntp.drift # estatisticas do ntp que permitem verificar o historico # de funcionamento e gerar graficos statsdir /var/log/ntpstats/ statistics loopstats peerstats clockstats filegen loopstats file loopstats type day enable filegen peerstats file peerstats type day enable filegen clockstats file clockstats type day enable # servidores publicos do projeto ntp.br server a.st1.ntp.br iburst server b.st1.ntp.br iburst server c.st1.ntp.br iburst server d.st1.ntp.br iburst server gps.ntp.br iburst server a.ntp.br iburst server b.ntp.br iburst server c.ntp.br iburst # outros servidores # server outro-servidor.dominio.br iburst # configuracoes de restricao de acesso restrict default kod notrap nomodify nopeer restrict -6 default kod notrap nomodify nopeer
# Permitir as máquinas de LAN sincronizar com este servidor ntp
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
Ferramentas de Minitoração
O ntp traz consigo algumas ferramentas que permitem monitorar seu funcionamento. A mais importante é o ntpq. A seguir são apresentados dois comandos do ntpq que permitem visualizar algumas variáveis importantes do ntp:
ntpq -c pe
Se for obtida uma resposta como:
server:/home/moreiras# ntpq -c pe ntpq: read: Connection refused
Significa que o serviço ntp não está funcionando. Uma reposta normal se parece com essa:
remote refid st t when poll reach delay offset jitter ================================================================================ +a.ntp.br 200.160.7.192 2 u 10 64 337 294.756 35.596 0.521 +b.ntp.br 200.160.7.186 2 u 8 64 377 226.294 2.658 0.229 *c.ntp.br 200.160.7.192 2 u - 64 377 208.758 4.026 0.424
Pode-se ver os 3 servidores do projeto ntp.br:
remote refid st t when poll reach delay offset jitter ================================================================================ +a.ntp.br 200.160.7.192 2 u 10 64 337 294.756 35.596 0.521 +b.ntp.br 200.160.7.186 2 u 8 64 377 226.294 2.658 0.229 *c.ntp.br 200.160.7.192 2 u - 64 377 208.758 4.026 0.424
O * em c.ntp.br significa que ele foi escolhido como system peer, ou seja, a principal referência na sincronização do sistema. Os + em a.ntp.br e b.ntp.br, significa que eles também estão sendo usados, mas com peso menor, para obter a hora certa. Pode-se observar também o offset, ou deslocamento, delay, ou atraso, e o jitter, ou variação, todos em milisegundos:
remote refid st t when poll reach delay offset jitter ================================================================================ +a.ntp.br 200.160.7.192 2 u 10 64 337 294.756 35.596 0.521 +b.ntp.br 200.160.7.186 2 u 8 64 377 226.294 2.658 0.229 *c.ntp.br 200.160.7.192 2 u - 64 377 208.758 4.026 0.424
O atraso significa o tempo de ida e volta dos pacotes. O valor do atraso não é tão importante, mas o ntp é sensível à simetria da rede. Ou seja, o ntp espera que o tempo de ida dos pacotes seja igual ao da volta. Isso geralmente está relacionado a atrasos pequenos.
O deslocamento significa o quanto o relógio local tem de ser adiantado ou atrasado para se igualar ao relógio do servidor. Quanto menor o valor, melhor. Valores de alguns milisegundos podem ser considerados normais.
A variação é calculada à partir de diversas medidas de deslocamento. Representa o quanto essas medidas variam entre si. Valores pequenos são melhores. Valores grandes podem indicar problemas de conectividade.
A variável reach é um número octal que indica o resultado das últimas 8 tentativas de acesso ao servidor.
remote refid st t when poll reach delay offset jitter ================================================================================ +a.ntp.br 200.160.7.192 2 u 10 64 337 294.756 35.596 0.521 +b.ntp.br 200.160.7.186 2 u 8 64 377 226.294 2.658 0.229 *c.ntp.br 200.160.7.192 2 u - 64 377 208.758 4.026 0.424
O valor 377 indica que as últimas 8 consultas ao servidor obtiveram sucesso. Outros valores indicam falhas.
ntpq -c rl
Uma reposta normal se parece com essa:
server:/home/moreiras# ntpq -c rl assID=0 status=0654 leap_none, sync_ntp, 5 events, event_peer/strat_chg, version="ntpd 4.2.2p4@1.1585-o Sun Mar 4 13:21:35 UTC 2007 (1)", processor="i686", system="Linux/2.6.9-023stab043.1-smp", leap=00, stratum=3, precision=-20, rootdelay=224.336, rootdispersion=35.121, peer=4764, refid=200.192.232.8, reftime=cb30d5b2.559c02d8 Thu, Jan 10 2008 15:34:42.334, poll=7, clock=cb30d6d8.ee2e88ee Thu, Jan 10 2008 15:39:36.930, state=4, offset=10.396, frequency=0.000, jitter=14.973, noise=8.978, stability=0.000, tai=0
server:/home/moreiras# ntpq -c rl assID=0 status=0654 leap_none, sync_ntp, 5 events, event_peer/strat_chg, version="ntpd 4.2.2p4@1.1585-o Sun Mar 4 13:21:35 UTC 2007 (1)", processor="i686", system="Linux/2.6.9-023stab043.1-smp", leap=00, stratum=3, precision=-20, rootdelay=224.336, rootdispersion=35.121, peer=4764, refid=200.192.232.8, reftime=cb30d5b2.559c02d8 Thu, Jan 10 2008 15:34:42.334, poll=7, clock=cb30d6d8.ee2e88ee Thu, Jan 10 2008 15:39:36.930, state=4, offset=10.396, frequency=0.000, jitter=14.973, noise=8.978, stability=0.000, tai=0
Dentre as várias informações obtidas, pode-se destacar a versão do ntp, em verde; o estrato, em vermelho (3 é o nível esperado, já que os servidores públicos do ntp.br são estrato 2); e o deslocamento, em milisegundos, em azul, que indica quanto o relógio local tem de ser adiantado ou atrasado para chegar à hora certa.
fonte : http://www.ntp.br/NTP/MenuNTPLinuxBSD
Nenhum comentário:
Postar um comentário