Wie richte ich einen Linux-Client ein, um die über DHCP bereitgestellten NTP-Informationen zu verwenden?

18

Es gibt so viele Tutorials, in denen erklärt wird, wie der dhcpdServer eingerichtet wird, um DHCP-Clients NTP-Vorschläge zu unterbreiten. Ich hatte immer gedacht, dass die ntpKonfiguration automatisch durchgeführt wird. Vor kurzem habe ich in meinem lokalen Netzwerk Zeitverschiebungen festgestellt, daher gehe ich davon aus, dass dies eine falsche Annahme war. Deshalb habe ich mich vorgenommen, um zu sehen, wie man die Konfiguration des NTP-Clients minimieren kann, vorausgesetzt, man hat sich die Mühe gemacht, ntp-serverVorschläge einzurichten dhcpd.

Abgesehen von diesem Ubuntu-spezifischen Hilfetutorial konnte ich nicht viel finden: https://help.ubuntu.com/community/UbuntuTime . Auch hier (siehe Abschnitt unter "Fehlerbehebung -> Welche Konfigurationsdatei wird verwendet?") Sind die Informationen knapp, aber es wird angegeben, dass eine gefundene /etc/ntp.conf.dhcpDatei stattdessen verwendet wird. Zuallererst ist der tatsächliche Speicherort, den der Schreiber hier meinte, /var/lib/ntp/ntp.conf.dhcpwie angegeben /etc/init.d/ntp, aber unabhängig davon garantiert das Vorhandensein dieser Datei nicht, dass der ntp Server von anfordert dhclient. Daher muss ich die serverKlausel ntp.conf.dhcpfür meinen lokalen NTP-Server explizit hinzufügen . Aber warum richte ich dann überhaupt ntp-Einstellungen auf dem dhcpdServer ein?

Dies scheint gegen die Intuition zu verstoßen, dh ntp-Einstellungen einmal einzurichten (dh auf dem Server) und den dhcpdServer die Informationen an die Clients delegieren zu lassen. Wie kann ich die Client-Konfiguration für das NTP minimieren (wenn nicht ganz vermeiden)? Alternativ dazu, wie kann ich ntpInformationen erhalten dhclient.

Gibt es eine CLI-Lösung, die für alle Linux-Distributionen geeignet ist?

Ich ntpdgehe davon aus, dass jeder Client die ausführbaren Dateien von haben sollte , aber ich weiß nicht, wie ich von dort aus vorgehen soll.

Vielen Dank

BEARBEITEN: Ubuntu Client ausführliche Ausgabe bei manueller Ausführung 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.

Der ntpd-Dienst wird neu gestartet, läuft ntpq -cpe -casdanach jedoch noch nicht. Mein lokaler ntp-Server wird in der Liste der ntp-Server angezeigt.

Natürlich hat mein dhcpdServeroption 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)
}
nass
quelle
1
In meinem DHCPD-Server übergebe ich den NTP-Server an die Clients zur Verwendung mitoption ntp-servers x.x.x.x
Rui F Ribeiro
@RuiFRibeiro Hallo zusammen, ja diese Option ist in der Tat Teil meines dhcpdServers.
nass
2
serverfault.com/questions/329596/… kann Ihnen einige Hinweise geben. Sie möchten wahrscheinlich nach /etc/dhcp/dhclient-exit-hooks.d/ntp schauen, um den tatsächlich verwendeten Dateinamen zu finden. Stellen Sie sicher, dass Ihre dhclient.conf-Datei so eingerichtet ist, dass sie auch NTP-Server anfordert.
Ika
Du benutzt Ubuntu als Client? Welche Version?
Roaima
@roaima-Client kann Ubuntu sein, aber eine allgemeinere Lösung würde helfen. Nehmen wir an, Ubuntu 14.04 LTS ist in diesem Fall der Client.
nass

Antworten:

10

Wenn der von Ihnen verwendete DHCP-Server so konfiguriert ist, dass er die ntp-serversOption bereitstellt , können Sie Ihren DHCP-Client so konfigurieren, dass er NTP-Server anfordert, indem Sie ihn ntp-serverszur Standardanforderungszeile in hinzufügen dhclient.conf, wie am Ende dieses Beispiels von Ubuntu Linux (ab 19.04, aber anwesend seit mindestens 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.confund die Informationen von DHCP werden verwendet, um zu erstellen /etc/ntp.conf.dhcp.

Ihr ntpd muss angewiesen werden, /etc/ntp.conf.dhcp zu verwenden, falls vorhanden. Bei der von mir verwendeten Ubuntu-Version geschieht dies über /etc/dhcp/dhclient-exit-hooks.d/ntp. <- Dies ist die Datei, die NTPd anweist, zu verwenden, /etc/ntp.conf.dhcpwenn sie existiert, und nur zu verwenden, /etc/ntp.confwenn dies nicht der Fall ist.

Tim Kennedy
quelle
2
In Ubuntu 18.04 ist diese Datei in /run/ntp.conf.dhcp, Sie können ihren Speicherort in jedem Fall /etc/dhcp/dhclient-exit-hooks.d/ntp
nachschlagen
Es sieht so aus, als ob die neuesten Ubuntu 16.04-Xenial-Versionen keine ntp-Optionen mehr unterstützen. Früher hat es gut funktioniert. Das zu tun: /usr/sbin/dhcpd -tgibt folgendes: /etc/dhcp/dhcpd.conf line 20: unknown option dhcp.ntp-server option ntp-server 10.... es hat im Sommer gut funktioniert.
Linas
0

chronydJa, es wird immer noch das NTP-Protokoll verwendet. Möglicherweise haben Sie einige Quellen überprüft:

https://docs.oracle.com/cd/E52668_01/E54669/html/section_zy2_rrf_pp.html

https://wiki.archlinux.org/index.php/Chrony

http://chrony.tuxfamily.org/faq.html#_i_have_several_computers_on_a_lan_should_be_all_clients_of_an_external_server

https://docs.fedoraproject.org/en-US/Fedora/18/html/System_Administrators_Guide/chap-Configuring_NTP_Using_the_chrony_Suite.html

Ich empfehle die letzten 2.

Abdullah
quelle
1
Hallo Abdullah, Chrony ist eine nützliche Alternative, aber Ihre Antwort zeigt nicht, wie Sie DHCP-Clients dazu bringen können, die von einem DHCP-Server bereitgestellten NTP-Informationen zu nutzen.
Anthony G - Gerechtigkeit für Monica
@AnthonyGeoghegan Hallo, Wenn Sie es als Kommentar hinzufügen, würde ich meine Antwort löschen,
Abdullah
Veröffentlichen Sie nicht nur einige Links (diese neigen dazu, nicht mehr zu funktionieren), sondern geben Sie die erforderlichen Informationen in Ihre Antwort ein.
Wiedereinsetzung von Monica - M. Schröder