Ntp client
Zur Navigation springen
Zur Suche springen
Grundlagen
- Das Network Time Protocol (NTP) ist ein Standard zur Synchronisierung von Uhren in Computersystemen über paketbasierte Kommunikationsnetze.
- NTP verwendet das verbindungslose Transportprotokoll UDP (Port 123).
Installation des Clients
- apt-get install ntp
Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut Lese Status-Informationen ein... Fertig Vorgeschlagene Pakete: ntp-doc Die folgenden NEUEN Pakete werden installiert: ntp ...
Konfiguration
- Nach der Installation ist keine weitere Konfiguration notwendig.
- Unter Ubuntu ist standardmäßig als NTP-Server ntp.ubuntu.com eingetragen.
- Die Konfigurationsdatei liegt unter /etc/ntp.conf
driftfile /var/lib/ntp/ntp.drift statistics loopstats peerstats clockstats filegen loopstats file loopstats type day enable filegen peerstats file peerstats type day enable filegen clockstats file clockstats type day enable server ntp.ubuntu.com restrict -4 default kod notrap nomodify nopeer noquery restrict -6 default kod notrap nomodify nopeer noquery restrict 127.0.0.1 restrict ::1
Festlegung des Driftfiles
- Im Driftfile wird die Abweichung der Systemuhr zur Referenzzeit (Offset) gespeichert.
- Diese Datei wird mit dem Starten des NTP Daemons gelesen und wird kontinuierlich angepasst.
driftfile /var/lib/ntp/ntp.drift
Statistiken
- Hiermit können (sehr technische) Statistiken über verschiedene Komponenten geführt werden.
- statistics ist die Basisfunktion um die Statistiken zu führen während filegen spezifische Dateien für die jeweiligen S
statistics loopstats peerstats clockstatstatistiken erstellt.
- Zum Aktivieren entfernt man das Kommentarzeichen vor statsdir
# Enable this if you want statistics to be logged. statsdir /var/log/ntpstats/ statistics Statistikname
loopstats | erlaubt Aufzeichnungen über den Loop Filter |
peerstats | erlaubt Aufzeichnunen über Peers |
clockstats | erlaubt Aufzeichnungen über die Systemuhr |
- Format für Loopstats
(Datum,Modifizierter Julianischer Tag) (Sekunden- und Bruchteile nach Mitternacht UTC) (Offset) (RMS Jitter) (Allan Abweichung) root@zero:~# cat /var/log/ntpstats/loopstats 55035 40119.485 0.004551000 -6.379 0.001435093 0.064274 6
- Format für peerstats
(Datum,Modifizierter Julianischer Tag) (Sekunden- und Bruchteile nach Mitternacht UTC) (Peer IP-Adresse) (Status) (Offset) (Delay) (Dispersion) (RMS Jitter) root@zero:~# cat /var/log/ntpstats/peerstats 55035 40832.485 91.189.94.4 9614 0.005485220 0.039669868 0.001994688 0.001977256
Filegen Dateiname | erstellt eine Datei für eine Statistik. |
file Dateiname | Dateiname, der für die Statistik benutzt werden soll |
type | Art der Datei, die genutzt werden soll. Day erstellt jeden Tag eine neue Datei
alternativ gibt es noch week, month und year |
enable / disable | erlaubt oder verbietet die Aufzeichnungsfunktion |
Weitere Server
- Weitere Server können mit
server servername
- hinzugefügt werden.
server 0.de.pool.ntp.org Serverpool ntp.org server 1.de.pool.ntp.org server 2.de.pool.ntp.org server 3.de.pool.ntp.org server ptbtime1.ptb.de Physikalisch-Technische Bundesanstalt (Braunschweig) server ptbtime2.ptb.de Physikalisch-Technische Bundesanstalt, alternativer Server server time.windows.com Windows Zeitserver
Manuelle Synchronisation
ntpdate [NTP-Server]
- systemctl stop ntp muss dazu gestoppt sein.
- Die Systemzeit kann manuell mit ntpdate synchronisiert werden.
Beispiel
root@zero:~# ntpdate pool.ntp.org 6 Jul 14:53:12 ntpdate[8959]: adjust time server 78.46.73.8 offset -0.018683 sec
Lokaler NTP Server
- Für ein LAN kann ein Unix-Rechner mit einem NTP Client die Zeit weitergeben, die er selbst von einem NTP Server bezogen hat.
- Dazu muss in /etc/ntp.conf der Zugriff für das entsprechende Netz erlaubt werden.
- Es dauert einige Zeit, bis der Server als "suitable" (dt. geeignet) gelistet wird.
/etc/ntp.conf
# You do need to talk to an NTP server or two (or three). server ntp.ubuntu.com ... # Access control configuration; see /usr/share/doc/ntp-doc/html/accopt.html for # details. The web page <http://support.ntp.org/bin/view/Support/AccessRestrictions> # might also be helpful. # # Note that "restrict" applies to both servers and clients, so a configuration # that might be intended to block requests from certain clients could also end # up blocking replies from your own upstream servers. # By default, exchange time with everybody, but don't allow configuration. #restrict -4 default kod notrap nomodify nopeer noquery #restrict -6 default kod notrap nomodify nopeer noquery restrict 192.168.240.0 mask 255.255.240.0 nomodify ...
restrict
- restrict beschränkt die Nutzung des NTP-Servers auf ein bestimmtes Netz. Dabei können weitere Parameter angegeben werden.
restrict 192.168.240.0 mask 255.255.240.0 nomodify
-4 | Beschränkt die erlaubten Anfragen auf IPv4 |
-6 | Beschränkt die erlaubten Anfragen auf IPv6 |
kod | Wenn dieses Flag gesetzt ist, wird nach einer Zugriffsverletzung ein Paket versendet (Kiss of Death) |
notrap | Lehnt es ab, mode 6 control messages trap service an entsprechende Hosts zu schicken. Der trap service ist ein subsystem
des ntpdq Kontrollprotokolls, welches für remote-logging Programme gedacht ist. |
nopeer | Lehnt es ab, eine neue Assoziierung (NTP-Server-Verbund) erstellen wollen. |
noquery | Lehnt ntpq und ntpdc Anfragen (zu Server-Status-Informationen) ab. |
nomodify | Lehnt ntpq und ntpdc Anfragen ab, die den Zustand des NTP-Servers verändern wollen. |
Test
- ntpdate 192.168.242.1
7 Jul 09:57:54 ntpdate[1519]: step time server 192.168.242.1 offset -328.693068 sec
Troubleshoot
Error:
1 Jan 01:02:46 ntpdate[1113]: no server suitable for synchronization found
Mögliche Ursache: ntp gibt zu schnell auf server zu erreichen.
Lösung: /etc/ntp.conf
server XXX.XXX.XXX.XXX burst iburst
erhöht die versuchten verbindungen
timezone
- Liste der Zeitzonen:
timedatectl list-timezones | grep -i europe
- Zeitzone ändern:
sudo timedatectl set-timezone Europe/Berlin
Weitere Infos=
Im Paket
- ntp-doc
sind weitere Informationen zu finden. Diese kann man über einen Webbrowser unter file:///usr/share/doc/ntp-doc/html/ntpd.html aufrufen.