La teksta protokolo de OpenVPN metas daton, horon kaj us= valoron en la sama linio, kaj la lasta el la tri estas la parto, kiun legantoj miskomprenas. Ĝi estas la mikrosekunda komponanto de tiu tempstampo, presita sen plenigo per nuloj. Ĝi ne estas sesia identigilo, uzantnomo aŭ nombrilo, kaj trakti ĝin tiel igas frakcion de sekundo memfida malĝusta konkludo. Konvertu ĝin kiel frakcion de la montrata sekundo, kaj la resto de la linio restas legebla.

Kion signifas la tri partoj de la linio

La dato kaj la tuta sekundo venas unue, kaj us= portas la restaĵon sub unu sekundo. Valoro de 12345 estas dek du mil tricent kvardek kvin mikrosekundoj, do 0.012345 sekundoj, tial la linio priskribas 09:15:30.012345 kiam la presita tempo estas 09:15:30. La nombrilo rekomenciĝas kun ĉiu nova sekundo, do posta linio povas presi pli malgrandan frakcion sen ke iu ajn horloĝo iru malantaŭen. Nur la kompleta tempstampo ordigas eventojn.

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

La unuo estas unu milionono de sekundo, kaj ses ciferoj de us= kovras la tutan gamon de 0.000000 ĝis 0.999999. Kvin ciferoj priskribas dekojn da milisekundoj, dum ses priskribas centojn da milisekundoj ĝis preskaŭ plena sekundo. Se konverto donas frakcion pli grandan ol unu, la dekuma punkto moviĝis kaj la aritmetiko malĝustas. Fari ĝin permane signifas dividi la presitan entjeron per unu miliono kaj aldoni ĝin al la tuta sekundo.

Plenigo estas la kaptilo. us=42 estas kvardek du mikrosekundoj, skribitaj kiel .000042, ne .42. Plenigu la entjeron al ses lokoj maldekstre antaŭ konverti, kaj la valoro ĉesas aspekti kiel dekuma frakcio de la ciferoj, kiujn vi vidas.

Konverti linion sen kalkulilo

Prenu la presitan sekundon kiel bazon kaj traktu us= kiel la frakcion. Por 09:15:30 kun us=12345 la dekuma formo estas 09:15:30.012345; por us=900000 ĝi estas 09:15:30.900000. La ciferoj post la dekuma punkto estas la plenigita entjero, neniam la entjero dividita per mil. Skribi unue la sesciferan formon evitas la plej multajn erarojn.

Se vi analizas protokolojn en tempstampojn, analizu la daton, la tutan sekundon kaj la frakcion kune. Analizilo, kiu supozas milisekundojn, ordigos eventojn malĝuste per faktoro de mil, kaj la eligo ankoraŭ aspektas kredinda.

Kiam la kampo mankas en la protokolo

La mikrosekunda parto apartenas al la teksta protokola formato kaj aperas nur kiam detalaj tempstampoj estas ŝaltitaj. En la tempstampa formatilo de OpenVPN 2.6 ĝi aldoniĝas kiam tiu eligo estas ŝaltita kaj la konservita valoro ne estas nulo. Protokolo sen us= do diras nenion pri la horloĝo aŭ la versio; kutime ĝi signifas, ke la agordita detaleblo estas tro malalta. Kontrolu la agordon antaŭ ol kulpigi temp-sinkronigon.

La agordon facilas konfirmi el la servila agordo. Rulu la suban komandon kaj legu la nombron, kiun ĝi redonas. Detala tempstampa eligo aperas je detala nivelo 4, do pli malalta valoro klarigas la mankan kampon sen iu ajn alia fuŝo. Ruli la saman agordon kun --verb 4 montras la kampon tuj kiam la demono restartas kun tiu nivelo.

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

Pli alta detaleblo aldonas detalojn al la protokolo; ĝi ne plibonigas la horloĝon. Post la restarto, komparu novan linion kun malnova por konfirmi, ke la formato ŝanĝiĝis, kaj malaltigu la nivelon denove, kiam la demando estos respondita.

Kion ses ciferoj ne pruvas

Ses ciferoj priskribas distingivon, kaj distingivo diras nenion pri tio, ĉu du gastigantoj konsentas pri la tempo. Kliento kaj servilo ambaŭ povas presi mikrosekundojn dum iliaj horloĝoj diferencas per sekundoj. Kiam vi korelacias eventojn inter maŝinoj, notu la tempzonon kaj ajnan konatan dekliniĝon, kaj preferu kampon, kiu nomas la paron aŭ la sesion, super iu ajn tempstampo. Du linioj, kiuj dividas frakcion, ne nepre estas la sama konekto.

Kolektanto povas stampi ĉiun linion ĉe alveno, kio aldonas duan tempstampon, kiu apartenas al la kolektanto, ne al OpenVPN. Identigu, kiun vi legas, antaŭ ol kompari ilin, kaj konservu la krudan linion, por ke la komparo povu esti refarita.

Nova us= valoro ne pruvas, ke nova kliento ensalutis, kaj ripetita ne pruvas duoblan eventon. La kampoj de la paro kaj konekto respondas tiujn demandojn.

Rilataj artikoloj