Eine Webantwort kann eine grobe Zeitreferenz liefern, wenn die verfügbare ausgehende Route ein HTTP-Proxy ist. Fordern Sie für einen kontrollierten Endpunkt, dessen Uhr Sie vertrauen, seine Antwortheader über diese Route an:

curl --head --proxy http://proxy.example.net:8080 https://time.example.net/

Der Host ist ein Beispiel-Endpunkt, kein öffentlicher Zeitdienst. Wenn der vertrauenswürdige Endpunkt öffentlich erreichbar ist und das Netzwerk einen nicht authentifizierten öffentlichen Vermittler zulässt, kann die HTTP-Proxy-Liste Kandidaten für die Proxyadresse liefern; die vertrauenswürdige Uhr liefert sie nicht. Eine Antwort könnte enthalten:

Date: Thu, 29 Oct 2026 08:15:20 GMT
Age: 45

Date gibt den Zeitpunkt an, zu dem die HTTP-Nachricht entstanden ist. Das bedeutet nicht unbedingt „der aktuelle Moment bei diesem Client“. Eine zwischengespeicherte Antwort kann ein älteres Date haben und dennoch zur Wiederverwendung gültig bleiben. Das Feld Age drückt die Schätzung des Caches für das Alter der Antwort in Sekunden aus.

In dieser beispielhaften Antwort ergibt das Hinzufügen des gemeldeten Alters eine grobe Referenz um 08:16:05 GMT, bevor Übertragungsverzögerung und Schätzfehler berücksichtigt werden. Es ist kein gemessener Versatz. Zeichnen Sie auf, wann der Client die Anfrage gesendet und die Antwort empfangen hat, wenn die Anwendung die Unsicherheit beschreiben will.

Manche Server unterstützen HEAD nicht wie erwartet oder lassen nutzbare Zeitmetadaten weg. Behandeln Sie ein fehlendes oder fehlerhaftes Feld als fehlgeschlagene Zeitbeobachtung. Eine 407-Antwort beschreibt den Proxy-Austausch, ihr Date ist also nicht automatisch die Uhr des Endpunkts, den Sie abfragen wollten.

Wählen Sie, wofür die Beobachtung dient

Das kann helfen, eine Uhr zu erkennen, die um Stunden oder Tage falsch ist, oder einem Diagnosebericht einen ungefähren externen Zeitstempel beizufügen. Es bietet nicht die Uhrwahl und die Verzögerungs-/Versatzverarbeitung von NTP und sollte keine präzisionsempfindlichen Uhrkorrekturen steuern.

Für die eigentliche Systemsynchronisierung verwenden Sie den freigegebenen Zeitdienst des Netzwerks und einen unterstützten Zeitsynchronisierungspfad. Eine HTTP-Proxy-Route kann die obige Headerprüfung übertragen, ohne das NTP-Protokoll selbst verfügbar zu machen.

Ähnliche Artikel