KEA DHCP NTP-Konfiguration - Netzwerk und Serveradministration
Version vom 20. Oktober 2025, 07:38 Uhr von Maximilian.pottgiesser (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „Kategorie:DHCP Kategorie:NTP = NTP-Server via Kea DHCP verteilen = == Übersicht == Kea DHCP kann NTP-Server-Informationen an DHCP-Clients verteilen…“)
NTP-Server via Kea DHCP verteilen
Übersicht
Kea DHCP kann NTP-Server-Informationen an DHCP-Clients verteilen. Dies ermöglicht eine zentrale Zeitserver-Konfiguration für alle Netzwerkgeräte.
DHCP-Option für NTP
- Option 42 (DHCPv4): NTP Servers
- Format: Liste von IPv4-Adressen
Konfiguration
Globale NTP-Konfiguration
NTP-Server für alle Subnetze:
- sudo vim /etc/kea/kea-dhcp4.conf
{
"Dhcp4": {
"interfaces-config": {
"interfaces": [ "enp0s3" ]
},
"lease-database": {
"type": "memfile",
"persist": true,
"name": "/var/lib/kea/dhcp4.leases"
},
"valid-lifetime": 600,
"max-valid-lifetime": 7200,
"option-data": [
{
"name": "domain-name-servers",
"data": "10.88.1XX.21"
},
{
"name": "domain-name",
"data": "it1XX.int"
},
{
"name": "domain-search",
"data": "it1XX.int, example.com"
},
{
"name": "ntp-servers",
"data": "10.88.1XX.10"
}
],
"subnet4": [
{
"subnet": "172.16.1XX.0/24",
"pools": [
{
"pool": "172.16.1XX.50 - 172.16.1XX.100"
}
],
"option-data": [
{
"name": "routers",
"data": "172.16.1XX.1"
}
]
}
],
"loggers": [
{
"name": "kea-dhcp4",
"output_options": [
{
"output": "/var/log/kea/kea-dhcp4.log"
}
],
"severity": "INFO"
}
]
}
}
Mehrere NTP-Server
{
"name": "ntp-servers",
"data": "10.88.1XX.10, 10.88.1XX.11, 192.53.103.108"
}
Öffentliche NTP-Server
Beispiele für öffentliche NTP-Server in Deutschland:
{
"name": "ntp-servers",
"data": "ptbtime1.ptb.de, ptbtime2.ptb.de, ptbtime3.ptb.de"
}
Hinweis: Für öffentliche NTP-Server müssen Hostnamen erst in IP-Adressen aufgelöst werden, da Kea nur IP-Adressen unterstützt.
Beispiel mit IP-Adressen:
{
"name": "ntp-servers",
"data": "192.53.103.103, 192.53.103.104, 192.53.103.108"
}
Subnet-spezifische NTP-Server
Verschiedene NTP-Server für unterschiedliche Subnetze:
{
"Dhcp4": {
"option-data": [
{
"name": "ntp-servers",
"data": "10.88.1XX.10"
}
],
"subnet4": [
{
"subnet": "172.16.1XX.0/24",
"pools": [
{
"pool": "172.16.1XX.50 - 172.16.1XX.100"
}
],
"option-data": [
{
"name": "routers",
"data": "172.16.1XX.1"
}
]
},
{
"subnet": "10.88.1XX.0/24",
"pools": [
{
"pool": "10.88.1XX.50 - 10.88.1XX.100"
}
],
"option-data": [
{
"name": "routers",
"data": "10.88.1XX.1"
},
{
"name": "ntp-servers",
"data": "10.88.1XX.11, 10.88.1XX.12"
}
]
}
]
}
}
In diesem Beispiel:
- Subnet 172.16.1XX.0/24 verwendet den globalen NTP-Server 10.88.1XX.10
- Subnet 10.88.1XX.0/24 überschreibt dies mit eigenen Servern 10.88.1XX.11 und 10.88.1XX.12
Dienst neu starten
- Konfiguration testen
- sudo kea-dhcp4 -t /etc/kea/kea-dhcp4.conf
- Dienst neu starten
- sudo systemctl restart kea-dhcp4-server
- Status prüfen
- sudo systemctl status kea-dhcp4-server
Überprüfung auf dem Client
Linux Client
- DHCP-Informationen anzeigen
- cat /var/lib/dhcp/dhclient.leases
oder
- ip addr show
- NTP-Status prüfen (wenn systemd-timesyncd verwendet wird)
- timedatectl status
Erwartete Ausgabe:
Local time: Mo 2025-10-20 15:30:45 CET
Universal time: Mo 2025-10-20 13:30:45 UTC
RTC time: Mo 2025-10-20 13:30:45
Time zone: Europe/Berlin (CET, +0100)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
- Konfigurierte NTP-Server anzeigen
- timedatectl show-timesync --all
Windows Client
- PowerShell als Administrator öffnen
- ipconfig /all
Im Output nach "DHCP-Server" und unter "Optionen" suchen.
- NTP-Konfiguration prüfen
- w32tm /query /status
NTP-Server einrichten (Optional)
Falls Sie einen eigenen NTP-Server im Netzwerk betreiben möchten:
Installation
- sudo apt install chrony
Basis-Konfiguration
- sudo vim /etc/chrony/chrony.conf
# Upstream NTP-Server (PTB Deutschland) server ptbtime1.ptb.de iburst server ptbtime2.ptb.de iburst server ptbtime3.ptb.de iburst # Erlaube lokale Clients allow 10.88.1XX.0/24 allow 172.16.1XX.0/24 # Driftfile driftfile /var/lib/chrony/drift # Log-Verzeichnis logdir /var/log/chrony
Dienst starten
- sudo systemctl restart chrony
- sudo systemctl enable chrony
Status prüfen
- chronyc tracking
- chronyc sources
Wichtige Hinweise
- NTP verwendet Option 42 in DHCPv4
- Kea unterstützt nur IP-Adressen, keine Hostnamen in den DHCP-Optionen
- Für IPv6 wird stattdessen Option 56 (NTP Server) verwendet
- Die meisten modernen Betriebssysteme unterstützen NTP via DHCP
- Windows unterstützt seit Windows Server 2003/Windows XP SP2 NTP via DHCP
Troubleshooting
Client erhält keinen NTP-Server
- DHCP-Lease erneuern:
- sudo dhclient -r && sudo dhclient
- Kea-Logs prüfen:
- sudo journalctl -u kea-dhcp4-server -n 50
- Tcpdump auf DHCP-Traffic:
- sudo tcpdump -i enp0s3 -n port 67 or port 68
NTP-Synchronisation funktioniert nicht
- Firewall-Regeln prüfen (NTP verwendet UDP Port 123):
- sudo iptables -L -v -n | grep 123
- NTP-Server Erreichbarkeit testen:
- ntpdate -q 10.88.1XX.10
oder mit chrony:
- chronyc -n sources