De tekstlog van OpenVPN zet een datum, een tijd en een us= waarde op dezelfde regel, en de laatste van de drie is het deel dat lezers verkeerd begrijpen. Het is de microsecondecomponent van die tijdstempel, afgedrukt zonder nulopvulling. Het is geen sessie-identificatie, gebruikersnaam of teller, en het zo behandelen maakt van een fractie van een seconde een zelfverzekerde verkeerde conclusie. Reken het om als een fractie van de weergegeven seconde en de rest van de regel blijft leesbaar.

Wat de drie delen van de regel betekenen

De datum en de hele seconde komen eerst, en us= draagt de rest onder één seconde. Een waarde van 12345 is twaalfduizend driehonderdvijfenveertig microseconden, dat is 0.012345 seconden, dus de regel beschrijft 09:15:30.012345 wanneer de afgedrukte tijd 09:15:30 is. De teller begint bij elke nieuwe seconde opnieuw, dus een latere regel kan een kleinere fractie afdrukken zonder dat een klok achteruit loopt. Alleen de volledige tijdstempel ordent gebeurtenissen.

2026-11-02 08:41:07 us=4820

De eenheid is een miljoenste van een seconde, en zes cijfers us= bestrijken het hele bereik van 0.000000 tot 0.999999. Vijf cijfers beschrijven tientallen milliseconden, terwijl zes honderden milliseconden beschrijven tot bijna een hele seconde. Als een omrekening een fractie groter dan één oplevert, is de decimale punt verschoven en is de rekensom fout. Het met de hand doen betekent het afgedrukte gehele getal door een miljoen delen en bij de hele seconde optellen.

Opvulling is de val. us=42 is tweeënveertig microseconden, geschreven als .000042, niet .42. Vul het gehele getal vóór het omrekenen links aan tot zes plaatsen, en de waarde lijkt niet meer op een decimale breuk van de cijfers die je ziet.

Een regel omrekenen zonder rekenmachine

Neem de afgedrukte seconde als basis en behandel us= als de fractie. Voor 09:15:30 met us=12345 is de decimale vorm 09:15:30.012345; voor us=900000 is dat 09:15:30.900000. De cijfers na de decimale punt zijn het aangevulde gehele getal, nooit het gehele getal gedeeld door duizend. Eerst de zescijferige vorm schrijven voorkomt de meeste fouten.

Als je logs naar tijdstempels parseert, parseer dan de datum, de hele seconde en de fractie samen. Een parser die milliseconden aanneemt, ordent gebeurtenissen duizendvoudig verkeerd, en de uitvoer ziet er nog steeds plausibel uit.

Wanneer het veld in het log ontbreekt

Het microseconde-deel hoort bij het tekstlogformaat en verschijnt alleen wanneer gedetailleerde tijdstempels zijn ingeschakeld. In de tijdstempelformatter van OpenVPN 2.6 wordt het toegevoegd wanneer die uitvoer aan staat en de opgeslagen waarde niet nul is. Een log zonder us= zegt dus niets over de klok of de build; meestal betekent het dat de ingestelde uitgebreidheid te laag is. Controleer de configuratie voordat je de tijdsynchronisatie de schuld geeft.

De instelling is eenvoudig te bevestigen vanuit de serverconfiguratie. Voer de opdracht hieronder uit en lees het getal dat hij teruggeeft. Gedetailleerde tijdstempeluitvoer verschijnt bij uitgebreidheid 4, dus een lagere waarde verklaart het ontbrekende veld zonder andere fout. Dezelfde configuratie draaien met --verb 4 toont het veld zodra de daemon met dat niveau herstart.

grep -nE '^[[:space:]]*verb[[:space:]]+[0-9]' /etc/openvpn/server.conf

Meer uitgebreidheid voegt detail aan het log toe; het verbetert de klok niet. Vergelijk na de herstart een nieuwe regel met een oude om te bevestigen dat het formaat is veranderd, en verlaag het niveau weer als de vraag is beantwoord.

Wat zes cijfers niet bewijzen

Zes cijfers beschrijven de resolutie, en resolutie zegt niets over of twee hosts het over de tijd eens zijn. Een client en een server kunnen beide microseconden afdrukken terwijl hun klokken seconden verschillen. Wanneer je gebeurtenissen tussen machines correleert, noteer dan de tijdzone en elke bekende afwijking, en geef de voorkeur aan een veld dat de peer of de sessie noemt boven elke tijdstempel. Twee regels met dezelfde fractie zijn niet noodzakelijk dezelfde verbinding.

Een verzamelaar kan elke regel bij aankomst stempelen, wat een tweede tijdstempel toevoegt die bij de verzamelaar hoort en niet bij OpenVPN. Bepaal welke je leest voordat je ze vergelijkt, en bewaar de ruwe regel zodat de vergelijking opnieuw kan worden gedaan.

Een verse us=-waarde bewijst niet dat een nieuwe client inlogde, en een herhaalde bewijst geen dubbele gebeurtenis. De peer- en verbindingsvelden beantwoorden die vragen.

Gerelateerde artikelen