Sincronización PCs con NTP

Network Time Protocol (NTP) es un protocolo de internet para sincronizar los relojes de los sistemas informáticos a través de ruteo de paquetes en redes con latencia variable. NTP utiliza UDP como su capa de transporte, usando el puerto 123. Está diseñado para resistir los efectos de la latencia variable.
La red a sincronizar consta de un PC actuando como servidor de tiempo y otros dos PCs como clientes del primero. La configuración sobre Kubuntu 8.04 se ha llevado a cabo de la siguiente forma:
Se instala el paquete NTP en caso de que no lo tengamos ya instalado, para ello:
$sudo aptitude install ntp
Una vez instalado, pasamos a configurar el archivo /etc/ntp.conf utilizando vi por ejemplo:
$sudo vi /etc/ntp.conf
Como nota aclaratoria, sólo se puede modificar este archivo si accedemos como root (de ahí el sudo). Las configuraciones serán como sigue:
Parte servidora____________________________
# Restringe a que las maquinas de la red NET_ADDR, ej: 192.168.1.0
# no puedan modificar el reloj del Server. MASK_ADDR ej: 255.255.255.0

restrict NET_ADDRESS mask MASK_ADDR nomodify notrap
restrict 127.0.0.1

# IP de donde se sincronizará el Server, en este caso será del propio clock interno.
server 127.127.1.0 # local clock

# Parámetros que se pasan al driver del clock.
fudge 127.127.1.0 stratum 10
driftfile /var/lib/ntp/drift
broadcastdelay 0.008
keys /etc/ntp/keys

Parte cliente______________________________
# Restringe a que las maquinas de la red NET_ADDR, ej: 192.168.1.0
# no puedan consultar el reloj. MASK_ADDR ej: 255.255.255.0
restrict NET_ADDRESS mask MASK_ADDR notrap noquery
restrict 127.0.0.1

# IP de donde se sincronizará el Server, en este caso será el la IP del 7Link0 (primario).

server IP_DEL_SERVER

driftfile /var/lib/ntp/drift
broadcastdelay 0.008
keys /etc/ntp/keys

Una vez modificado y guardado convenientemente cada archivo, nos disponemos a inicializar el servicio
#/etc/init.d/ntpd start (# = estando en la consola como root)
[#service ntpd start en otros Linux tipo Fedora]
El proceso tarda un tiempo en sincronizarse (no más de 2 minutos en mi caso). El puerto 123 tiene que estar abierto porque es el utilizado en este caso. Para saber si lo tenemos abierto teclear en consola lo siguiente:
#netstat -anp --inet
Prot Recv-Q Send-Q Dir Local Dir Externa Estado PID/Program name
Prot Recv-Q Send-Q Dir Local Dir Externa Estado PID/Program name

udp 0 0 169.254.5.76:123 0.0.0.0:* -

Para saber si está funcionando correctamente usar los comandos:
#ntpq -pn
#ntptrace
Para sincronizar inmediatamente:
#ntpdate DIR_IP_SERVER
La comprobación final es ejecutar en un terminal de sendas máquinas el comando date para ver si están sincronizados.

0 comentarios: