Andres Seco Hernandez wrote:
> En netstd vienen tanto rdate como netdate, y ambos usan la RFC868 para
> sincronizar la hora. �Hacen los dos lo mismo? Yo uso rdate y no me da
> problemas. La p�gina man de rdate es mucho m�s escueta que la de netdate,
> pero �en qu� se diferencian?

Pues no lo s�, pero he estado investigando, y he llegado a una serie de
conclusiones:

1a) Con netdate siempre acabas cambiando la fecha y hora de tu sistema.
1b) rdate tiene la opci�n -p con la que no cambias nada.

2a) netdate tiene cierta inteligencia para averiguar cu�l es el mejor de
los hosts a los que accede para preguntar la hora, y cuando lo ha
averiguado s�lo usa la hora de ese host.
2b) rdate s�lo te deja preguntarle la hora a un host.

3a) El protocolo RFC868 s�lo devuelve 32 bits (tiempo en segundos), pero
netdate puede aceptar otros 32 bits extra (microsegundos con exactitud
al nivel de milisegundo).
3b) La p�gina man de rdate no dice nada de esto, por lo que es posible
que se ajuste al protocolo estrictamente.

4a) netdate te pone la hora que encuentra tal cual.
4b) rdate, con su opci�n -a, usa la llamada al sistema adjtimex(2) para
ir cambiando gradualmente la hora, lo cual es importante por el tema de
los crons.

5) Tanto netdate como rdate pueden obtener la hora de cualquier host que
la proporcione, lo cual no es garant�a de que ese host tenga la hora
bien.

6) La hora parece ser que se obtiene a trav�s del puerto 37 (time), por
lo que en general podr�s preguntarle la hora a cualquier sistema Unix y
Linux (incluso yo se la podr�a preguntar a tu m�quina y �sta la dar�a)
que no tengan expresamente deshabilitado este puerto. Por eso, como la
hora se la puedes preguntar a casi cualquier sistema Unix/Linux, no
debes fiarte mucho de lo que te respondan.

Yo casi te aconsejar�a que utilizaras el protocolo NTP para obtener la
fecha y hora. El NTP s�lo lo tienen habilitado (normalmente) aquellos
hosts que tienen horas fiables (que obtienen a su vez de otros hosts
todav�a m�s fiables). Lo puedes encontrar en el paquete xntp3, y la
documentaci�n (el paquete xntp3 viene sin p�ginas man, lo cual es una
mierda) en el paquete xntp3-doc (ambos en la secci�n net de main). En el
paquete, entre otros, tienes un demonio xntpd para la administraci�n
autom�tica de la hora del sistema, y el cliente ntpdate.

El cliente ntpdate tiene la posibilidad de preguntarle la hora a varios
hosts y selecciona al mejor host (como netdate), puede no poner la hora
y s�lo mostrarla en pantalla (como rdate), y puede usar la llamada al
sistema settimeofday(2) para poner la hora a lo bestia (como netdate y
rdate) o la adjtimex(2) (aunque en la documentaci�n la llaman adjtime()
) para cambiar la hora gradualmente (como rdate).

Adem�s del cliente, tienes el demonio xntpd, que funciona como un
ntpdate autom�tico continuo pero mejor: no usa crons (como usar�a la
implementaci�n a mano de ntpdate's continuos autom�tico)s, maximiza la
exactitud y fiabilidad, y minimiza el uso de recursos. En el paquete
vienen m�s programas, aunque s�lo encuentro interesante el ntptrace, con
el que puedes ver qu� camino ha seguido la informaci�n NTP desde que
sali� del servidor primario:
# ntptrace gong
gong.ci.uv.es: stratum 3, offset -0.055972, synch distance 0.23674
L0.EB-Valencia1.red.rediris.es: stratum 2, offset -0.024855, synch
distance 0.12744
hora.rediris.es: stratum 1, offset 0.015771, synch distance 0.00011,
refid 'GPS'

-- 
Conrado Badenas <[EMAIL PROTECTED]>
PhD student                  | Assistant Lecturer
Department of Thermodynamics | Department of Optics
---------------------------------------------------
Faculty of Physics. University of Valencia
c/. Dr. Moliner, 50
46100 Burjassot (Valencia) - SPAIN

Responder a