ntp

¿Configurando la hora por NTP? La hora oficial en España

3 min de lectura
¿Configurando la hora por NTP? La hora oficial en España

Actualización 2023/10/14: Esta es una de las publicaciones más visitadas del blog, así que -si bien el artículo sigue siendo mayoritariamente válido- he decidido darle una actualización.

La medición de tiempo siempre ha sido un aspecto importante en la computación, no en vano la microinformática de 8 bits ya empezó a incorporar en los años 80 dispositivos RTC (Real Time Clock) con el fin de que el sistema tuviera una marca temporal fiable y persistente tras apagar el equipo.

Pero actualmente ya no es sólo importante tener la hora correctamente en nuestro equipo, sino que debe estar sincronizada con lo que se considera la hora oficial de nuestro país. La razón es que transacciones electrónicas y la seguridad de las mismas depende de ello.

A todo esto nos puede ayudar un viejo amigo, el NTP -Network Time Protocol- diseñado en 1985 por David L. Mills; se ha mantenido durante más de 30 años como el protocolo de-facto para sincronización horaria.

Como he comentado, hay muchísimos servidores NTP a lo largo de todo el planeta, siendo de los más famosos el del NTP Pool Project o el de Microsoft en time.windows.com.

Servidor NTP oficial de España

¿Tenemos servidor NTP oficial de España? La respuesta es sí. A través del Real Decreto 1308/1992 se declara al Laboratorio del Real Instituto y Observatorio de la Armada como laboratorio depositario del Patrón Nacional de Tiempo y laboratorio asociado al Centro Español de Metrología, es decir, nuestra hora oficial.

Este organismo pone a disposición de la ciudadanía distintos modos de difusión de la hora oficial, siendo uno de ellos su difusión por protocolo NTP. ¿Cómo lo hacemos? Apunta tu cliente NTP a la siguiente dirección y lo tendrás hecho:

Servidores NTP oficiales de España: hora.roa.es y minuto.roa.es. También existe un dominio que devuelve cualquiera de los dos, ntp.roa.es.

Es importante remarcar que el servicio NTP del Real Observatorio de la Armada no es certificado, por lo que si necesitas certificación oficial de hora, deberás optar por otro método.

¿Cómo saber con que servidor sincroniza mi equipo?

¡Es muy sencillo!

Windows

En Windows podemos usar la utilidad w32tm.exe (NET TIME está descatalogado y en desuso).

C:\Users\cmilanf>w32tm /query /status
Leap Indicator: 0(no warning)
Stratum: 4 (secondary reference - syncd by (S)NTP)
Precision: -6 (15.625ms per tick)
Root Delay: 0.0359713s
Root Dispersion: 1.9015379s
ReferenceId: 0xC0A81215 (source IP:  192.168.0.21)
Last Successful Sync Time: 12/02/2017 12:28:50
Source: MAD-DC2.hispamsx.org
Poll Interval: 10 (1024s)

C:\Users\cmilanf>w32tm /query /computer:mad-dc2 /status
Leap Indicator: 0(no warning)
Stratum: 3 (secondary reference - syncd by (S)NTP)
Precision: -6 (15.625ms per tick)
Root Delay: 0.0341326s
Root Dispersion: 0.1254185s
ReferenceId: 0xC0A81214 (source IP:  192.168.0.20)
Last Successful Sync Time: 12/02/2017 12:28:38
Source: MAD-DC1.hispamsx.org
Poll Interval: 10 (1024s)

C:\Users\cmilanf>w32tm /query /computer:mad-dc1 /status
Leap Indicator: 0(no warning)
Stratum: 2 (secondary reference - syncd by (S)NTP)
Precision: -6 (15.625ms per tick)
Root Delay: 0.0312500s
Root Dispersion: 0.0276420s
ReferenceId: 0x96D65E05 (source IP:  150.214.94.5)
Last Successful Sync Time: 12/02/2017 12:40:21
Source: hora.roa.es,0x9
Poll Interval: 10 (1024s)

Como podéis ver, mi equipo sincroniza con MAD-DC2, que a su vez sincroniza de MAD-DC1, que a su vez y en última instancia, sincroniza la hora de hora.roa.es. Todo esto se lleva a cabo mediante GPO en mi bosque de Active Directory. Aquí se puede encontrar un artículo estupendo que explica como realizar esta configuración para todo tu dominio.

GNU/Linux

En GNU/Linux se realiza habitualmente mediante ntpd y ntpdate, pero si ya te encuentras bajo systemd entonces tienes bastantes posibilidades de estar usando timesyncd, en cuyo caso puedes consultar su estado así:

cmilanf@MAD-BBS:~$ timedatectl status
      Local time: Sun 2017-02-12 12:49:12 CET
  Universal time: Sun 2017-02-12 11:49:12 UTC
        RTC time: Sun 2017-02-12 11:49:13
       Time zone: Europe/Madrid (CET, +0100)
 Network time on: yes
NTP synchronized: yes
 RTC in local TZ: no

Happy timing!