Windows 2008 R2 - Zeitsynchronisation
Zeitsynchronisation Windows Server 2008 R2 PDC Master mit einer externen Zeitquelle. Zeit synchronisieren mit Windows 2008 R2 Server.
Wie funktioniert die Zeitsynchronisation in Windows Netzwerken:
http://support.microsoft.com/kb/816042
MSDN Blog - Zeit synchronisieren
http://blogs.msdn.com/w32time/default.aspx
Basis fuer die Konfiguration - Zeit synchronisieren:
http://support.microsoft.com/kb/816042/en-us
W32TM Hilfe
W32TM Hilfe Help
Firewall:
Sicherstellen, dass die Firewall NTP Port 123 UDP vom PDC Master zu den externen Zeitservern erlaubt
Registry
Angabe der externen NTP Server und umstellen des Types von NT5DS auf NTP
Anpassen diverser Einstellungen laut http://support.microsoft.com/kb/816042/en-us Artikel
Time Provider NTP Client konfigurieren
W32TM
Die Konfiguration / Troubleshooting des W32Time Dienstes erfolgt mit dem Command Line Tool W32TM
Die wichtigsten Werkzeuge:
w32tm /monitor
Anzeige der Zeitzonenkonfiguration
Abfrage der Computerkonfiguration
Resynchronisation
Noch was zu lesen (Der Artikel stammt aus Windows 2000 Zeiten, vermittelt aber einen guten Ueberblick):
Das SNTP-Protokoll ist in RFC 1769 definiert und ist eine abgespeckte Version des vollen NTP-Protokolls und wird in Netzwerken eingesetzt, bei denen es nicht auf genaueste Zeitsynchronisation und Protokollierungsfähigkeiten ankommt. Während die korrekten Zeiten in einer AD-Domäne für die Replikation der Verzeichnisinformationen nicht so elementar wichtig sind, wie z. B. bei Novell, weil die Replikation des AD bei MS mit USN und erst dann mit Zeitstempeln arbeitet, ist die korrekte Zeit auf allen Rechnern innerhalb der Domäne für den Einsatz von Kerberos sehr wichtig. Kerberos arbeitet mit Tickets, welche nach gewisser Zeit ablaufen und erneuert werden müssen. Unterscheiden sich die Systemzeiten der Rechner im Netzwerk hier sehr stark, so kann es schnell zu unerwünschten Problemen kommen. Bei der Verwendung von Kerberos werden Zeitfenster von maximal 5 Minuten toleriert. Um diese Problematik zu lösen, verwendet MS ab Windows 2000 Professional Version den Windows 2000 Server Time Service
Der Windows Server Time Service kann nicht über ein MMC-SnapIn konfiguriert werden, sondern nur über die Systemsteuerung der jeweiligen Workstation. Windows 2000 implementiert RFC 1361, den Simple Network Time Protocol Dienst, welche eine vereinfachte Version des Network Time Protocols (NTP) darstellt. Microsoft verwendet nicht den vollen NTP-Dienst, weil es unter Windows 2000 nicht auf Protokollierfähigkeiten und die genaueste Zeit im Millisekundenbereich ankommt. Im Laufe der Zeit wurde die Zeitsychchronisation mit jeder Windows Version verfeinert. Sie können die Zeitkonfiguration auch manuell über die Registry vornehmen. Ändern Sie die Standardeinstellungen des NTP-Servers, indem Sie einen neuen Eintrag vom Typ REG_SZ mit dem Value NTPServer in der Struktur HKLM\System\CurrentControlSet\Services\W32Time\Parameters setzen. Der Eintrag muss den DNS-Namen oder die IP-Adresse des Zeitservers enthalten. Zusätzlich müssen Sie den Wert Nt5DS zu NTP ändern.
Administratoren können auch externe Zeitserver für die Zeitsynchronisation verwenden, indem sie an der Kommandozeile den Befehl: NET TIME /SETSNTP:<SERVER-LISTE> eingeben.
Wie funktioniert die Zeitsynchronisation?
- Die Workstation kontaktiert den authentifizierenden DC. Es erfolgt ein Paketaustausch um die zeitliche Latenz zwischen den zwei Maschinen zu ermitteln.
- Die lokale Zeit der Workstation wird geändert. Wenn die Zielzeit auf der Workstation hinter der lokalen Zeit des DC ist, wird die Zeit des Servers gesetzt.
- Wenn die Zielzeit des Servers hinter der Zeit der lokalen Workstation ist, wird die Echtzeituhr der Workstation für die nächsten 20 Minuten „verlangsamt“ um die Zeiten abzugleichen. Divergiert die lokale Zeit jedoch mehr als 2 Minuten von der Zielzeit des Servers, wird die korrekte Zeit sofort gesetzt.
- Die Workstation prüft in regelmäßigen Abständen (zunächst alle 8 Stunden) die Zeit mit dem Zielserver. Wenn die lokale Zeit sich mehr als 2 Sekunden von der des DC unterscheidet, wird das Intervall halbiert, bis eine minimale Frequenz von 45 Minuten entsteht.
Windows 2000 Server arbeiten folgendermaßen:
- Alle Mitgliedserver arbeiten nach dem gleichen Verfahren wie Windows 2000 Professional
- Alle PDCs in der Domäne verwenden den FSMO als Zeitserver
- Alle PDC FSMO verwenden den „Inbound“-Partner DC als Zeitserver NTP-Protokoll
- Das NTP-Protokoll ist in RFC 1305 spezifiziert. NTP Synchronisation ist Part eines Software Packages, welches zusätzlich noch diverse NTP Optionen und Algorithmen enthält.
SNTP Sicherheit
SNTP verwendet die Credentials des Clients um eine sichere Verbindung von einem SNTP-Client zu einem SNTP-Server aufzubauen. SNTP verwendet dazu den sicheren Kanal den eine Win2K Prof.-Maschine mit einem Win2K-Server aufbaut. (Netlogon Secure Channel). W32Time benutzt den sicheren Client Account um eine Signatur für SNTP-Pakete zu erstellen welche über das Netzwerk gesendet werden. Außerhalb einer Domäne ist der W32Time-Dienst relativ unsicher und nicht geschützt, da keine sicheren Verbindungen verwendet werden können.
Zeitsynchronisation
W32Time wird standardmäßig auf allen Windows 2000 Professional Maschinen, Win2K Servern usw. installiert. W32Time verwendet UTC (Universal Time Coordination) welches auf einer atomaren Zeitskala basiert. W32Time wird automatisch auf Computern gestartet welche zur Domäne hinzugefügt wurden. Auf Rechnern welche nicht Mitglied einer Domäne sind, muss der W32Time-Dienst manuelle gestartet und konfiguriert werden. W32Time prüft in regelmäßigen Abständen die richtige Systemzeit. Zuerst beim Starten des Systems, dann in Intervallen von 45 Minuten bis die Systemzeit mit der Zeitquelle synchronisiert ist und nach erfolgter Synchronisation alle acht Stunden. Taucht ein Fehler auf, beginnt der Prozess der Zeitsynchronisation wieder von vorne.
Die Zeitsynchronisation ist auch mit Hilfe von Drittanbieterprodukten möglich. Der W32Time-Dienst kann manuelle von der Kommandozeile gestartet und gestoppt werden.
NET STOP W32TIME
NET START W32TIME
NET TIME PARAMETER
Parameter Beschreibung
NET TIME = Zeigt die Zeit auf einem Zeitserver an
NET TIME \\COMPUTERNAME = Zeigt die Zeit auf einem bestimmten Rechner an
NET TIME /DOMAIN:DOMÄNENNAME = Zeigt die Zeit auf einem Domänencontroller an
NET TIME /RTSDOMAIN:DOMÄNENNAME = Zeigt die Zeit auf dem Zeitserver an
NET TIME /QUERYSNTP = Zeigt die manuell konfigurierte Zeitquelle an
NET TIME /SETSNTP:NTPSERVER = Setzt die manuelle Zeitquelle für diesen Computer
NET TIME /SETSNTP = Löscht die manuell konfigurierte Zeitquelle für diesen Computer
W32TM ist ein Diagnoseutility für den W32Time-Service. Wenn das Tool auf einem DC genutzt wird ist es erforderlich den W32Time-Dienst zu stoppen
Hier noch die Hilfe dazu:
w32tm [/? | /register | /unregister ]
? - this help screen.
register - register to run as a service and add default
configuration to the registry.
unregister - unregister service and remove all configuration
information from the registry.
w32tm /monitor [/domain:<domain name>] [/computers:<name>[,<name>[,<name>...]]] [/threads:<num>] [/ipprotocol:<4|6>] [/nowarn]
domain - specifies which domain to monitor. If no domain name is given, or neither the domain nor computers option is specified, the default domain is used. This option may be used more than once.
computers - monitors the given list of computers. Computer
names are separated by commas, with no spaces. If a name is
prefixed with a '*', it is treated as an AD PDC. This option may be used more than once.
threads - how many computers to analyze simultaneously. The default value is 3. Allowed range is 1-50.
ipprotocol - specify the IP protocol to use. The default is to use whatever is available.
nowarn - skip warning message.
w32tm /ntte <NT time epoch>
Convert a NT system time, in (10^-7)s intervals from 0h 1-Jan 1601, into a readable format.
w32tm /ntpte <NTP time epoch>
Convert an NTP time, in (2^-32)s intervals from 0h 1-Jan 1900, into a readable format.
w32tm /resync [/computer:<computer>] [/nowait] [/rediscover] [/soft]
Tell a computer that it should resynchronize its clock as soon as possible, throwing out all accumulated error statistics.
computer:<computer> - computer that should resync. If not specified, the local computer will resync.
nowait - do not wait for the resync to occur;
return immediately. Otherwise, wait for the resync to complete before returning.
rediscover - redetect the network configuration and rediscover
network sources, then resynchronize.
soft - resync utilizing existing error statistics. Not useful, provided for compatibility.
w32tm /stripchart /computer:<target> [/period:<refresh>] [/dataonly] [/samples:<count>] [/packetinfo] [/ipprotocol:<4|6>]
Display a strip chart of the offset between this computer and another computer.
computer:<target> - the computer to measure the offset against.
period:<refresh> - the time between samples, in seconds. The default is 2s
dataonly - display only the data, no graphics.
samples:<count> - collect <count> samples, then stop. If not
specified, samples will be collected until Ctrl-C is pressed.
packetinfo - print out NTP packet response message.
ipprotocol - specify the IP protocol to use. The default is to use whatever is available.
w32tm /config [/computer:<target>] [/update] [/manualpeerlist:<peers>] [/syncfromflags:<source>] [/LocalClockDispersion:<seconds>] [/reliable:(YES|NO)] [/largephaseoffset:<milliseconds>]
computer:<target> - adjusts the configuration of <target>. If not specified, the default is the local computer.
update - notifies the time service that the configuration has changed, causing the changes to take effect.
manualpeerlist:<peers> - sets the manual peer list to <peers>, which is a space-delimited list of DNS and/or IP addresses. When specifying multiple peers, this switch must be enclosed in quotes.
syncfromflags:<source> - sets what sources the NTP client should
sync from. <source> should be a comma separated list of these keywords (not case sensitive):
MANUAL - sync from peers in the manual peer list
DOMHIER - sync from an AD DC in the domain hierarchy
NO - sync from none
ALL - sync from both manual and domain peers
LocalClockDispersion:<seconds> - configures the accuracy of the internal clock that w32time will assume when it can't acquire time from its configured sources.
reliable:(YES|NO) - set whether this machine is a reliable time source. This setting is only meaningful on domain controllers.
YES - this machine is a reliable time service
NO - this machine is not a reliable time service
largephaseoffset:<milliseconds> - sets the time difference between local and network time which w32time will consider a spike.
w32tm /tz
Display the current time zone settings.
w32tm /dumpreg [/subkey:<key>] [/computer:<target>]
Display the values associated with a given registry key.
The default key is HKLM\System\CurrentControlSet\Services\W32Time (the root key for the time service).
subkey:<key> - displays the values associated with subkey <key> of the default key.
computer:<target> - queries registry settings for computer <target>.
w32tm /query [/computer:<target>] {/source | /configuration | /peers | /status} [/verbose]
Display a computer's windows time service information.
computer:<target> - query the information of <target>. If not specified, the default is the local computer.
source: display the time source.
configuration: display the configuration of run-time and where the setting comes from. In verbose mode, display the undefined or unused setting too.
peers: display a list of peers and their status.
status: display windows time service status.
verbose: set the verbose mode to display more information.
w32tm /debug {/disable | {/enable /file:<name> /size:<bytes> /entries:<value> [/truncate]}}
Enable or disable local computer windows time service private log.
disable: disable the private log.
enable: enable the private log.
file:<name> - specify the absolute filename.
size:<bytes> - specify the maximum size for circular logging.
entries:<value> - contains a list of flags, specified by number and seperated by commas, that specify the types of information that should be logged. Valid numbers are 0 to 300. A range of numbers is valid, in addition to single numbers, such as 0-100,103,106. Value 0-300 is for logging all information.
truncate: truncate the file if it exists.