Usar la puerta de enlace pnetworkingeterminada como server ntp

Tengo muchos serveres ejecutando Debian y todos ellos deben sincronizar el reloj al server NTP que se ejecuta en su respectiva puerta de enlace pnetworkingeterminada. Como hay muchos serveres en muchos segmentos de networking diferentes, tuve que averiguar cuál es la dirección IP de la puerta de enlace y cambiar manualmente /etc/ntp.conf para cada server.

Como esto tomó time y sé que la estructura de la networking cambia de vez en cuando, me pregunto si hay alguna manera fácil (más fácil que cambiar manualmente las direcciones IP cada año más o less) de configurar el cliente ntp para "sincronizar automáticamente a la puerta de enlace pnetworkingeterminada" " modo. Es algo como esto posible?

Después de una discusión con Jeff Schaller, acabo de agregar una init.d commands simple de init.d llamada set-gateway-as-ntp que se ejecuta antes de ntp y agrega la dirección de la puerta de enlace a /etc/ntp.conf :

 #! /bin/sh ### BEGIN INIT INFO # Provides: setgatewayasntp # Requinetworking-Start: $network # Requinetworking-Stop: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # X-Start-Before: $ntp # Short-Description: Set gateway as NTP server # Description: Set gateway address to /etc/ntp.conf ### END INIT INFO PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC="Set Gateway as NTP" . /lib/init/vars.sh . /lib/lsb/init-functions case "$1" in start) gateway_ip=`ip route show default | awk '/default/ {print $3}'` sed -i /etc/ntp.conf -e "s/^server .*/server $gateway_ip/" ;; stop) ;; *) echo "Usage: $SCRIPTNAME {start|stop}" >&2 exit 3 ;; esac : 

No estoy muy orgulloso de esta solución, pero soluciona mi problema.

La solución más fácil es proporcionar un optino ntp-servers en sus concesiones dhcp:

 subnet 192.168.10.0 netmask 255.255.255.0 { option routers 192.168.10.1; option ntp-servers 192.168.10.1, 192.168.10.50; BLAH BLAH } 

Por defecto, el package ntp de Debian viene con un gancho dhcp-exit que agrega ntpservers listdos en el arrendamiento dhcp al ntp.conf.