[FUG-BR] Comportamento estranho do ntp no FreeBSD-10.1-PRERELEASE

Eduardo Lemos de Sa eduardo.lemosdesa em gmail.com
Quarta Setembro 17 14:41:43 BRT 2014


Oi Luiz



2014-09-16 15:30 GMT-03:00 Luiz Otavio O Souza <lists.br em gmail.com>:

> 2014-09-16 10:06 GMT-03:00 Eduardo Lemos de Sa:
> > Oi Paulo
> >
> > 2014-09-15 20:13 GMT-03:00 Paulo Cavalcanti:
> >
> >> Em 15 de setembro de 2014 16:23, Eduardo Lemos de Sa
> >> <eduardo.lemosdesa em gmail.com> escreveu:
> >> [...]
> >> >
> >> > Eu resolvi fazer um teste:
> >> > sudo /etc/rc.d/ntpd stop
> >> > sudo date 1600 (atrasei deliberadmente o relógio em 4 minutos)
> >> > sudo /etc/rc.d/ntpd onestart (depois eu fiz uma outra tentativa e
> >> troquei o
> >> > onestart por um restart)
> >> >
> >> > e o horário na máquina local não mudou (se adiantou em 4 minutos). Não
> >> > satisfeito, fiz um reboot (é a minha máquina desktop) e nada (de
> melhor)
> >> > aconteceu. No dmesg não aparece qualquer menção de que o horário foi
> >> > modificado. Por favor, alguém tem alguma ideia de como descobrir o
> porquê
> >> > do erro?
> >> >
> >>
> >>
> >> Procure também no /var/log/messages alguma coisa referente a ntp.
> >>
> >> Faça um dig 0.freebsd.pool.ntp.org e veja se está resolvendo.
> >>
> >> Se me lembro bem o ntp tem uma tolerância de 1000 segundos de atraso,
> >> fora isso ele não sincroniza. Experimente atrasar o relógio em 600
> >> segundos, por exemplo.
> >>
> > Obrigado pela atenção.
> >
> > Sim, o tempo  máximo de ajuste é de 1000 segundos, mas eu atrasei o
> relógio
> > em 4 minutos (240 s), o que deveria ser suficiente.
> >
> > Eu fiz um dig no 0.freebsd.pool.ntp.org. Parece que está tudo certo. Por
> > favor, veja:
> >
>
> Ola Eduardo,
>
> O limite de 1000s inicial do ntp pode ser desabilitado adicionando
> 'ntpd_sync_on_start="YES"' no seu /etc/rc.conf.
>
> Com essa alteração o ntpd vai corrigir o horário mesmo quando o
> relógio esta errado bem além desse limite de 1000s.
>
> Geralmente quando o ntpd não acerta o horário é porque ele não esta
> conseguindo sincronizar com os servidores (isso aconteceu recentemente
> comigo pois meu provedor bloqueou todos pacotes na porta 123 por conta
> de ataques DoS).
>
> Utilize o ntptime para verificar o status do ntpd:
>
> % ntptime
> ntp_gettime() returns code 0 (OK)
>   time d7c2fef9.42d0e548  Tue, Sep 16 2014 15:24:57.261, (.261000372),
>   maximum error 996836 us, estimated error 25764 us, TAI offset 0
> ntp_adjtime() returns code 0 (OK)
>   modes 0x0 (),
>   offset 3615.118 us, frequency 31.199 ppm, interval 1 s,
>   maximum error 996836 us, estimated error 25764 us,
>   status 0x6001 (PLL,NANO,MODE),
>   time constant 10, precision 0.001 us, tolerance 496 ppm,
>
> Esse é o status de um servidor com o ntp sincronizado (verifique os
> dois OKs no ntp_gettime() e ntp_adjtime()).
>
> E abaixo segue o status de um servidor onde o ntp esta bloqueado:
>
> # ntptime
> ntp_gettime() returns code 5 (ERROR)
>   time d7c2cbe0.8b0c561c  Tue, Sep 16 2014 11:46:56.543, (.543157550),
>   maximum error 943516 us, estimated error 16 us, TAI offset 0
> ntp_adjtime() returns code 5 (ERROR)
>   modes 0x0 (),
>   offset 0.000 us, frequency 13.402 ppm, interval 1 s,
>   maximum error 943516 us, estimated error 16 us,
>   status 0x2040 (UNSYNC,NANO),
>   time constant 0, precision 0.001 us, tolerance 496 ppm,
>
> Além dos erros o campo status também tem a flag 'UNSYNC'.
>
> Rode um tcpdump na sua interface e veja se há respostas dos
> servidores, aqui no caso do server bloqueado só há tx e nada de rx.
>
> # tcpdump -nei XXX port 123
>

Muito obrigado pela ajuda e pela atenção.

Eu fiz o ntptime e resultou em code 5 (ERROR). além do UNSYNC. Como eu não
tenho um firewall nativo na máquina (pelo menos, eu nunca instalei um),
creio que alguém no Centro de Computação bloqueou alguma porta. Por favor,
seria esta a possível causa do problema?

Eu também fiz o tcpdump -nei re0 port 123  . Vejam o que eu consegui:

4:22:26.808228 00:13:46:39:e1:03 > 00:04:96:40:ac:60, ethertype IPv4
(0x0800), length 90: (tos 0x0, ttl 64, id 7342, offset 0, flags [none],
proto UDP (17), length 76)
    200.17.215.86.123 > 200.20.186.76.123: NTPv4, length 48
        Client, Leap indicator: clock unsynchronized (192), Stratum 0
(unspecified), poll 10 (1024s), precision -20
        Root Delay: 0.000000, Root dispersion: 0.159118, Reference-ID:
(unspec)
          Reference Timestamp:  0.000000000
          Originator Timestamp: 0.000000000
          Receive Timestamp:    0.000000000
          Transmit Timestamp:   3619963346.808199882 (2014/09/17 14:22:26)
            Originator - Receive Timestamp:  0.000000000
            Originator - Transmit Timestamp: 3619963346.808199882
(2014/09/17 14:22:26)


Parece que a máquina transmite (Transmit Timestamp) mas não recebe
(Originator Timestamp: 0.000000000).

Minha dúvida é como saber para descobrir onde está o bloqueio.

Um abraço e, de novo, obrigado

Eduardo


> Att.,
> Luiz
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>



-- 
Eduardo Lemos de Sa
Associated Professor Level 4
Dep. Quimica da Universidade Federal do Paraná
fone: +55(41)3361-3300
fax:   +55(41)3361-3186
Voip Number call to (41) 33613600 (listen to the message and type 10531185)


Mais detalhes sobre a lista de discussão freebsd