web-dev-qa-db-fra.com

Comment configurez-vous un client Linux pour utiliser les informations NTP fournies via DHCP?

il existe tellement de tutoriels là-bas expliquant comment configurer dhcpd serveur, en ce qui concerne la fourniture de suggestions NTP aux clients DHCP, que j'avais toujours pensé que la configuration ntp a été effectuée automatiquement. Récemment, j'ai commencé à voir des dérives d'horloge dans mon réseau local, alors je suppose que c'était une hypothèse erronée. J'ai donc défini pour voir comment peut-on minimiser la configuration du client NTP, à condition que l'on a effectué l'effort de configuration ntp-server suggestions via dhcpd.

Je n'ai pas été capable de trouver beaucoup à part de ce tutoriel d'aide spécifique à Ubuntu https://help.ubuntu.com/community/ubuntutime . Même ici (voir paragraphe sous "Dépannage -> Quel fichier de configuration utilise-t-il?") L'information est rare mais elle dit que si un /etc/ntp.conf.dhcp Le fichier est trouvé, il sera utilisé à la place. Tout d'abord, l'emplacement réel que l'auteur signifiait ici est /var/lib/ntp/ntp.conf.dhcp comme observé dans /etc/init.d/ntp, mais peu importe que la présence de ce fichier ne garantit pas que le NTP demandera des serveurs de dhclient. En conséquence, je dois explicitement ajouter la clause server dans ntp.conf.dhcp Pour mon serveur NTP local. Mais dans ce cas, pourquoi puis-je même configurer les paramètres NTP sur le serveur dhcpd?

Cela semble aller contre l'intuition, c'est-à-dire des paramètres NTP d'installation une fois (c'est-à-dire sur le serveur) et laissez dhcpd serveur déléguer les informations aux clients. Comment puis-je minimiser (sinon éviter complètement) la configuration du client pour le NTP. Alternativement, comment puis-je obtenir des informations ntp via dhclient.

Y a-t-il une solution CLI qui correspond à toutes les distributions de Linux?

Je suppose que chaque client doit avoir les exécutables de ntpd, mais je ne sais pas comment procéder de là.

Merci

Modifier: Ubuntu Client Verbose Sortie lorsqu'il fonctionne manuellement dhclient:

Sudo dhclient -1 -d -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0
Internet Systems Consortium DHCP Client 4.2.4
Copyright 2004-2012 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/eth0/20:cf:30:0e:6c:12
Sending on   LPF/eth0/20:cf:30:0e:6c:12
Sending on   Socket/fallback
DHCPREQUEST of 192.168.112.150 on eth0 to 255.255.255.255 port 67 (xid=0x2e844b8f)
DHCPACK of 192.168.112.150 from 192.168.112.112
reload: Unknown instance: 
invoke-rc.d: initscript smbd, action "reload" failed.
RTNETLINK answers: File exists
 * Stopping NTP server ntpd
   ...done.
 * Starting NTP server ntpd
   ...done.
bound to 192.168.112.150 -- renewal in 41963 seconds.

Le service NTPD est redémarré, mais en cours d'exécution ntpq -cpe -cas Ensuite, je ne vois toujours pas mon serveur NTP local dans la liste des serveurs NTP.

Bien sûr, mon serveur dhcpd a option ntp-servers

subnet 192.168.112.0 netmask 255.255.255.0 {
        max-lease-time 604800;
        default-lease-time 86400;
        authoritative;
        ignore client-updates;

        option ntp-servers 192.168.112.112; #self

        ... (many other options)
}
19
nass

Si le serveur DHCP que vous utilisez est configuré pour fournir le ntp-servers Option, vous pouvez configurer votre DHClient pour demander aux serveurs NTP en ajoutant ntp-servers à la ligne de demande par défaut dans dhclient.conf, comme indiqué à la fin de cet exemple de Ubuntu Linux (à partir de 19,04, mais présent depuis au moins 12,04):

request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, domain-search, Host-name,
        dhcp6.name-servers, dhcp6.domain-search, dhcp6.fqdn, dhcp6.sntp-servers,
        netbios-name-servers, netbios-scope, interface-mtu,
        rfc3442-classless-static-routes, ntp-servers;

/etc/ntp.conf et les informations de DHCP seront utilisées pour créer /etc/ntp.conf.dhcp.

Votre NTPD doit être dit d'utiliser /etc/ntp.conf.dhcp s'il existe. Sur la version d'Ubuntu que j'utilise, cela se fait via /etc/dhcp/dhclient-exit-hooks.d/ntp. <- Ceci est le fichier qui indique à NTPD d'utiliser /etc/ntp.conf.dhcp Si cela existe, et simplement utiliser /etc/ntp.conf si ce n'est pas le cas.

11
Tim Kennedy
0
Abdullah