- Übersicht
- Variablenreferenz
- Schritt 1: Zeit-Hierarchie in einer Domäne
- Schritt 2: Externe NTP-Konfiguration des PDC-Emulators
- Schritt 3: Konfiguration anderer DCs und Mitglieder
- Schritt 4: Einheitliche Zeitsynchronisation per GPO (PowerShell)
- Hinweise für virtuelle Umgebungen
- Tests und Fehleranalyse
- Zusammenfassung
Übersicht
Dieser Artikel erläutert die Zeitsynchronisierung in einer Windows Server Domänenumgebung.
Im Fokus stehen der Aufbau der Zeithierarchie, die Rolle des PDC-Emulators als Zeitquelle, die Konfiguration des Dienstes w32time, die zentralisierte Verwaltung über Gruppenrichtlinien sowie Besonderheiten in virtuellen Umgebungen.
Variablenreferenz
| Variable | Beispielwert | Beschreibung |
|---|---|---|
<<PDC_HOST>> |
DC01.contoso.local |
PDC-Emulator (zeitliche Referenz der Domäne) |
<<SECONDARY_DC>> |
DC02.contoso.local |
Weitere Domain-Controller |
<<NTP_SERVER>> |
ntp.nict.jp |
Externer NTP-Server |
<<CLIENT_HOST>> |
SRV01.contoso.local |
Mitgliedsserver oder Client |
<<DOMAIN_NAME>> |
contoso.local |
Active Directory Domänenname |
Schritt 1: Zeit-Hierarchie in einer Domäne
Active Directory verwendet eine mehrstufige Zeithierarchie:
| Ebene | Synchronisationsquelle | Beschreibung |
|---|---|---|
| PDC-Emulator | Externer NTP-Server | Zentrale, vertrauenswürdige Zeitquelle |
| Andere DCs | PDC-Emulator | Synchronisierung innerhalb der Domäne |
| Mitgliedsserver / Clients | Nächster DC | Gewährleistung konsistenter Kerberos-Authentifizierung |
In Arbeitsgruppen muss die NTP-Quelle manuell pro System definiert werden.
Schritt 2: Externe NTP-Konfiguration des PDC-Emulators
Der PDC-Emulator wird als einzige vertrauenswürdige Zeitquelle konfiguriert.
# Externe NTP-Server (mehrere möglich)
w32tm /config /manualpeerlist:"ntp.nict.jp time.google.com" /syncfromflags:manual /reliable:yes /update
# Als vertrauenswürdige Quelle bewerben
reg add HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config /v AnnounceFlags /t REG_DWORD /d 5 /f
# Dienst neu starten
net stop w32time && net start w32time
Überprüfung:
w32tm /query /configuration
w32tm /query /status
Schritt 3: Konfiguration anderer DCs und Mitglieder
Weitere DCs oder Server synchronisieren sich standardmäßig automatisch mit dem PDC, können aber manuell angepasst werden.
# Synchronisation gemäß Domänenhierarchie
w32tm /config /syncfromflags:domhier /update
net stop w32time && net start w32time
Prüfung:
w32tm /resync /force
w32tm /query /status
Schritt 4: Einheitliche Zeitsynchronisation per GPO (PowerShell)
Zeitbezogene Richtlinien können zentral über Gruppenrichtlinienobjekte (GPOs) gesteuert werden.
Hier erfolgt die komplette Verwaltung per PowerShell.
1. GPO-Modul laden und Richtlinien prüfen
Import-Module GroupPolicy
# GPO-Liste anzeigen
Get-GPO -All | Select-Object DisplayName, Id, GpoStatus
# Default Domain Policy prüfen
Get-GPO -Name "Default Domain Policy" | Select-Object DisplayName, ModificationTime
2. Aktuelle Zeitrichtlinien abfragen
Get-GPRegistryValue -Name "Default Domain Policy" `
-Key "HKLM\SOFTWARE\Policies\Microsoft\W32Time\TimeProviders\NtpClient" `
-ValueName Type
Get-GPRegistryValue -Name "Default Domain Policy" `
-Key "HKLM\SOFTWARE\Policies\Microsoft\W32Time\TimeProviders\NtpClient" `
-ValueName NtpServer
Eine Fehlermeldung „nicht gefunden“ bedeutet lediglich, dass der Wert noch nicht existiert.
3. NTP-Client aktivieren und konfigurieren
# Aktivierung
Set-GPRegistryValue -Name "Default Domain Policy" `
-Key "HKLM\SOFTWARE\Policies\Microsoft\W32Time\TimeProviders\NtpClient" `
-ValueName Enabled -Type DWord -Value 1
# Synchronisationsmodus (NT5DS=Domäne, NTP=extern)
Set-GPRegistryValue -Name "Default Domain Policy" `
-Key "HKLM\SOFTWARE\Policies\Microsoft\W32Time\TimeProviders\NtpClient" `
-ValueName Type -Type String -Value "NT5DS"
# Externe Quelle (nur für PDC)
Set-GPRegistryValue -Name "Default Domain Policy" `
-Key "HKLM\SOFTWARE\Policies\Microsoft\W32Time\TimeProviders\NtpClient" `
-ValueName NtpServer -Type String -Value "<<NTP_SERVER>>,0x8"
# Abfrageintervall (Sekunden)
Set-GPRegistryValue -Name "Default Domain Policy" `
-Key "HKLM\SOFTWARE\Policies\Microsoft\W32Time\TimeProviders\NtpClient" `
-ValueName SpecialPollInterval -Type DWord -Value 3600
4. GPO-Verknüpfung und Geltungsbereich prüfen
Get-GPOReport -Name "Default Domain Policy" -ReportType Html -Path "$env:TEMP\DefaultDomainPolicy.html"
5. GPO anwenden und prüfen
gpupdate /force
gpresult /r
Get-GPResultantSetOfPolicy -ReportType Html -Path "$env:TEMP\gpresult.html"
6. Reale Registry-Werte kontrollieren
reg query "HKLM\SOFTWARE\Policies\Microsoft\W32Time\TimeProviders\NtpClient"
Beispielausgabe:
Enabled REG_DWORD 0x1
Type REG_SZ NT5DS
NtpServer REG_SZ ntp.nict.jp,0x8
SpecialPollInterval REG_DWORD 0xe10
Hinweise für virtuelle Umgebungen
In Hyper-V- oder VMware-Systemen kann es zu Konflikten kommen, wenn Host- und Gastzeitdienste aktiv sind.
Typische Ursachen:
- Gleichzeitige Host- und VM-Synchronisation
- PDC läuft virtualisiert und nutzt andere Quelle
- Snapshots oder Migrationen verändern die Zeit
Empfehlung:
- Host-Synchronisation auf dem PDC deaktivieren
- Andere VMs dürfen Host-Zeit nutzen
- Domäneninterne Synchronisation ausschließlich über
w32time
Tests und Fehleranalyse
# NTP-Test
w32tm /stripchart /computer:"<<NTP_SERVER>>" /dataonly /samples:5
# Dienststatus
Get-Service w32time
# Letzte 10 W32Time-Ereignisse
Get-WinEvent -LogName System | Where-Object {$_.ProviderName -eq "Microsoft-Windows-Time-Service"} |
Select-Object TimeCreated, Id, LevelDisplayName, Message -First 10
Zusammenfassung
- Der PDC-Emulator ist die einzige vertrauenswürdige Zeitquelle der Domäne.
- Nur der PDC nutzt externe NTP-Server; alle anderen Systeme verwenden
domhier. - In virtuellen Umgebungen ist die Host-Synchronisation auf dem PDC zu deaktivieren.
