Por que sincronizar a hora em uma rede?
Muitos administradores de redes já se fizeram esta pergunta e muitos não continuam dando a devida importância para a mesma. Por que sincronizar?
Podemos começar dizendo que na nossa sociedade atual, muitas das coisas que estão acontecendo a nossa volta e com nós mesmos possuem um importante fator que dita como elas devem ocorrer. O fator TEMPO!
Já imaginou, leitor, o quanto caótico seria o mundo sem a existência de relógios, despertadores, etc? Provavelmente sim. Porém, dificilmente nos lembramos deste fato, a não ser quando estamos muito atrasados para um compromisso ou alguma coisa que deva acontecer obrigatoriamente numa determinada hora de um determinado dia.
Agora deixando de lado a vã filosofia e o cotidiano, vamos colocar algumas idéias que deverão convencê-lo da importância da sincronização num ambiente de rede profissional.
- Quando você necessita pagar uma conta, você tem de saber que horas são realmente senão o sistema pode recusar o pagamento da conta e com isto você poderá ficar sujeito a multas. Imagine então o computador do teu chefe atrasado 10 minutos e ele deixa de fazer um pagamento, uma ligação importante ou perde a hora do seu vôo para Nova York apenas por causa disto. Em quem ele irá colocar a culpa por isto? Pense...
- Se os usuários da rede que você administra tiverem que fazer uma experiência, no dia seguinte, em que duas ou mais máquinas necessitem estar perfeitamente sincronizadas (em miléssimos de segundos), como você vai fazer isto? Ajustar a hora na BIOS na base do "achômetro"? Não adianta nada pois, dependendo do hardware, o atraso na manhã seguinte será na ordem dos décimos de segundos ou mais. E se você esquecer, já sabe de quem é a culpa, não?
- Só de lembrete, já que foi falado isto acima: Alguns programas dos teus servidores, como os que gerenciam o teu DNS, podem necessitar que o relógio do sistema esteja sincronizado. Por exemplo, no caso do DNS usar Transaction Signatures (TSIG), se os relógios dos dois lados da conexão estiverem totalmente desincronizados (os DNS trabalham com hora UTC/GMT, esqueça o problema do Time Zone por enquanto), a negociação entre eles falhará.
- Imagine se você necessitar fazer uma auditoria nas máquinas da tua rede, onde serão feitos cruzamentos de logs por horário, e nenhuma delas estiver sincronizada com coisa alguma. Já sabe para onde foi parar a auditoria, não sabe?
- Pior ainda, uma máquina da tua rede foi invadida mas você, inteligentemente, replicou os logs e identificou o invasor. Porém... Como nada estava sincronizado e os horários nos logs estavam totalmente fora da realidade, nada pôde ser feito a respeito porque os logs acabaram não sendo aceitos como prova de coisa alguma pois nada nos horários escritos neles batia com horário algum de lugar nenhum. Ah sim! Tem o Time Zone também! Lembrou de ajustar ele? :-)
Agora que você já leu os possíveis cenários acima, vamos ver algumas coisas que você talvez ainda não tenha se dado conta:
- Dependendo do(s) fabricante(s) dos componentes de um computador, o mesmo desligado por 15 minutos pode atrasar alguma coisa em torno de 1,5 segundos ou mais. Depende também da carga da bateria da BIOS.
- Funcionando 24 horas por dia, um servidor pode atrasar (geralmente atrasa, mas em alguns caso pode adiantar) algo em torno de 17 segundos ou mais por dia. Em uma semana são quase 2 minutos. Se a máquina é muito usada e deve ficar 24 horas por dia rodando processos de usuários sem ser desligada, você poderá começar a ter problemas em pouco tempo.
- Muitos MTA (Mail Transport Agent) podem e são configurados para refutar e-mails contendo informações absurdas de hora e data. Fuja do mico!
- Todo e qualquer circuito de equipamento eletrônico moderno possui erros na ordem dos microssegundos ou dos nanossegundos, no caso dos de alta precisão e qualidade. Não pense que os equipamentos da tua rede podem estar todos na categoria dos que possuem erros na casa dos nanossegundos.
- Se você ainda acha que as máquinas são infalíveis, rode um programa que some 0.00031416 dez mil vezes e observe o resultado que sai e que adianto que deveria ser 3.1416 (o valor aproximado de π), teoricamente. Aqui está um programa C testado em Unix que faz isto, mas adianto a saída dele abaixo. Está vendo como não são infalíveis?
Resultado de 0.00031416 * 10000: 3.141600
Resultado de 0.00031416 somado 10000 vezes: 3.141286
Espero que os exemplos e as idéias acima tenham o convencido da importância de sincronizar os relógios das máquinas da tua rede.
Copyright © 2003-2005 Rafael Jorge Csura Szendrodi