Die Frage nicht direkt zu beantworten, aber das kann nützlich sein.
DHCP-Verhalten
Unter Debian (zumindest) überschreibt der DHCP-Client die vorhandene NTP-Dienstkonfiguration.
Es wird vom Skript gesteuert /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]
Der DHCP-Client empfängt NTP-Server vom DHCP-Server, ruft die aktuelle NTP-Dienstkonfiguration vom NTP_CONF-Pfad ab und ändert sie, um über DHCP empfangene NTP-Server einzuschließen. Er generiert eine neue NTP-Konfigurationsdatei in den NTP_DHCP_CONF-Pfad und erzwingt schließlich den NTP-Dienst um diese neue Konfigurationsdatei zu verwenden.
Dies führt dazu, dass immer die über DHCP angekündigten NTP-Server verwendet werden. Systemkonfiguration umgehen.
Dies ist schwer zu debuggen, wenn es nicht bekannt ist, da die Dienstkonfiguration in '/etc/ntp.conf' unberührt bleibt und bei der Sichtprüfung korrekt ist. Es wird jedoch tatsächlich ignoriert und heimlich überschrieben.
Sie können 'ntpq -pn' verwenden, um zu debuggen, welche NTP-Server tatsächlich vom Deamon verwendet werden.
Mischen von DHCP-NTP-Optionen und systemspezifischer Konfiguration
Wenn in Ihrem Netzwerk ein NTP-Server vorhanden ist, der von DHCP angekündigt wird, und Sie ihn ignorieren möchten :
Sie müssen den DHCP-Client neu konfigurieren /etc/dhclient.conf
, um die ntp-servers
DHCP-Option zu überspringen . Siehe die Antwort von @Oliver.
Anschließend können Sie die Systemkonfiguration in anpassen /etc/ntp.conf
Wenn es irgendwann einen von DHCP angekündigten NTP-Server gab, aber nicht mehr :
Die System-NTP-Konfiguration wird möglicherweise immer noch vom DHCP-Client überschrieben, wodurch veraltete NTP-Server erzwungen werden, die vor langer Zeit angekündigt wurden. Dieses DHCP-Überschreiben kann tagelang über ntp service restart
und über überleben reboot
.
Um dem ein Ende zu setzen, müssen Sie /var/lib/ntp/ntp.conf.dhcp
den ntp-Dienst auf allen Ihren Servern entfernen und neu starten.
Letztes Wort
Dies ist alles undokumentiert, unerwartet und schwer zu debuggen. Das hat mir heute ziemlich Kopfschmerzen bereitet, weshalb ich dies hier dokumentiere.