Comment remplacer les informations NTP envoyées par DHCP dans Debian?


9

J'ai un serveur dans un réseau qui reçoit toutes ses informations réseau DHCP. Le problème est que l' ntp-serverenvoi n'est pas défini sur UTC. Je veux utiliser la configuration de ntpfound in /etc/ntp.confmais les DHCPinformations ont priorité. Comment puis-je forcer ntpdà utiliser la configuration /etc/ntp.confpar opposition à celle envoyée par DHCP? Quelle est la Debianmanière de procéder?


Quel démon ntp utilisez-vous? Quel est le contenu actuel de votre ntp.conf? Le package ntpdate est-il installé? Quel client DHCP utilisez-vous? Quelle version de Debian?
Zoredache

1
1. Sever sur DHCP 2. Le serveur NTP n'est pas "défini" sur UTC o_O
Chris S

Debian squeeze, default ntp.conf (celui qui vient après aptitude install ntp)
Ricardo Marimon

Réponses:


7

Je vous suggère de modifier / créer /etc/dhclient.conf et de décommenter la ligne "request" avec quelque chose comme ceci:

request subnet-mask, broadcast-address, routers, domain-name, domain-name-servers, host-name;

Surtout, si "ntp-servers" est présent, supprimez-le. Sous une certaine distribution (aka Fedora), elle est envoyée par défaut, vous devez donc mettre cette ligne explicitement afin que la valeur par défaut soit remplacée.

Vérifiez les man dhclient.confinformations détaillées.


Cela a parfaitement fonctionné ... y a-t-il quelque chose que l'on peut faire dans Debian qui va plus dans le sens de / etc / default ...
Ricardo Marimon

15

Ne répondant pas directement à la question, mais cela peut être utile.

Comportement DHCP

Sur Debian (au moins), le client DHCP remplace la configuration de service ntp existante.

Il est contrôlé par le script /etc/dhcp/dhclient-exit-hooks.d/ntp:

[contents from: /etc/dhcp/dhclient-exit-hooks.d/ntp]
NTP_CONF=/etc/ntp.conf
NTP_DHCP_CONF=/var/lib/ntp/ntp.conf.dhcp
...
[hundreds of lines of scripts]

Le client DHCP reçoit les serveurs ntp du serveur DHCP, il saisit la configuration actuelle du service ntp du chemin NTP_CONF et la modifie pour inclure les serveurs ntp reçus sur dhcp, il génère un nouveau fichier de configuration ntp dans le chemin NTP_DHCP_CONF, et finalement force le service ntp pour utiliser ce nouveau fichier de configuration.

Cela se traduit par toujours utiliser les serveurs ntp annoncés sur dhcp. Contournement de la configuration du système.

Ceci est difficile à déboguer s'il n'est pas connu car la configuration du service dans '/etc/ntp.conf' n'est pas modifiée et est correcte lors de l'inspection visuelle. Cependant, il est en fait ignoré et remplacé furtivement.

Vous pouvez utiliser 'ntpq -pn' pour déboguer quels serveurs ntp sont réellement utilisés par le démon.

Mélanger les options DHCP ntp et la configuration spécifique au système

S'il existe un serveur ntp dans votre réseau annoncé par DHCP et que vous souhaitez l'ignorer :

Vous devrez reconfigurer le client dhcp /etc/dhclient.confpour ignorer l' ntp-serversoption dhcp. Reportez-vous à la réponse de @Oliver.

Ensuite, vous pouvez personnaliser la configuration du système dans /etc/ntp.conf

S'il y avait un serveur ntp annoncé par DHCP à un moment donné mais plus maintenant :

La configuration du système ntp peut toujours être remplacée par le client dhcp, forçant les serveurs ntp obsolètes annoncés il y a longtemps. Cette surcharge DHCP peut survivre pendant des jours, à travers ntp service restartet reboot.

Pour y mettre fin, vous devrez supprimer /var/lib/ntp/ntp.conf.dhcpet redémarrer le service ntp sur tous vos serveurs.

Dernier mot

Il s'agit d'un comportement non documenté, inattendu et difficile à déboguer. Cela m'a causé beaucoup de maux de tête aujourd'hui, c'est pourquoi je documente cela ici.


7

Vous pouvez également simplement supprimer ce fichier:, /etc/dhcp/dhclient-exit-hooks.d/ntpau lieu de modifier vos requêtes DHCP. Ce fichier crée ntp.conf.dhcp.

Dans le cas où vous ntp.conf.dhcpavez été créé lors d'un démarrage précédent, assurez-vous de le supprimer également.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.