Je wilt weten of de tunnel een slaapstand van een laptop overleeft, een wandeling tussen toegangspunten, of een uur aan gesprekken, en je geeft liever niemand een log van alles wat je leest terwijl je dat uitzoekt. Drie dingen beantwoorden dat: een vaste probe, dezelfde vier feiten volgens een schema bemonsterd en de gebeurtenis die ze veranderde, opgeschreven. Tien minuten daarvan verslaan een middag kijken naar een pagina die niet laadt. Het log dat je uiteindelijk overhoudt is ook kort genoeg om aan een ticket te hangen zonder de helft te redigeren.

Bepaal wat stabiel moet betekenen

‘De VPN viel weg’ zijn vier verschillende storingen in één woord. De peer kan zijn handshake verliezen, de route kan terugvallen op de lokale gateway, naamresolutie kan naar een server gaan die nooit via de tunnel antwoordt, of dat alles kan gezond zijn terwijl één toepassing nog steeds faalt. Bepaal welke bij je symptoom past voordat je iets verzamelt, want elk vraagt een andere probe. Kies dan een interval dat je volhoudt: één meting elke dertig seconden gedurende tien minuten vangt een roaming zonder de test tot werkdruk te maken.

Als de klacht een gesprek is dat bevriest wanneer je naar de keuken loopt, is de eigenschap die je nodig hebt of een verse aanvraag na de roaming voltooid wordt. Dat is in één regel te controleren en het registreert helemaal geen surfgedrag.

Leg één onschadelijke probe vast

Kies een bestemming die je mag bevragen en die niet aan je accounts vastzit: een documentatiehost, een intern status-eindpunt of de gateway van de tunnel zelf. Maak de handeling herhaalbaar, bijvoorbeeld curl -s -o /dev/null -w "%{http_code} %{time_total}\n" https://example.com/, die één regel per poging afdrukt. Houd dat uitvoerformaat voor de hele run vast. Een statuscode en een duur die twee keer op dezelfde manier zijn verzameld, zijn wat twee runs vergelijkbaar maakt.

Weersta de site waarop je echt vertrouwt. Een bank- of webmailpagina sleept trackers, omleidingen en persoonlijke inhoud de meting in, en drukt sessie-identificatoren af in alles wat je later in een ticket plakt. Gebruik dezelfde bestemming voor het hele onderzoek en noteer die naast het interval.

Bemonster de vier feiten

Peerstatus, route, resolver en één verse aanvraag zijn de vier waarnemingen, en elk heeft een goedkope bron. Op WireGuard geeft wg show wg0 latest-handshakes de tijdstempel van de peer en ip route get 1.1.1.1 laat zien welke interface de kernel zou gebruiken. Op OpenVPN staat dezelfde status in het statusbestand dat --status /run/openvpn/status 10 schrijft of achter state op de beheerinterface. Een Windows-client blijft in PowerShell met Get-NetAdapter en Resolve-DnsName.

Zet ze in een lus in één terminal zodat elke regel een tijdstempel draagt: for i in $(seq 1 20); do date -Is; wg show wg0 latest-handshakes; ip route get 1.1.1.1; sleep 30; done. Die lus dekt drie van de zes logvelden; de clientversie komt één keer bovenaan, en de tijdstempel van de gebeurtenis wordt toegevoegd wanneer de gebeurtenis plaatsvindt.

De resolver is het feit dat mensen overslaan, en dig +short verbergt het, omdat die vorm alleen het antwoord afdrukt. Vraag de server expliciet met dig example.com | grep SERVER:, of gebruik nslookup example.com waar dig niet is geïnstalleerd, wat het adres afdrukt van de server waar de query heen ging. Een oude handshake op een inactieve tunnel is ook niet automatisch een fout, omdat WireGuard alleen sleutels vernieuwt wanneer er verkeer te beschermen is.

Veroorzaak de gebeurtenis, geen lek

Neem vijf rustige minuten als basislijn voor de gebeurtenis die je aangaat, of dat nu het sluiten van de deksel is, naar een ander toegangspunt lopen of overschakelen naar de hotspot van een telefoon. Noteer het tijdstip waarop je die veroorzaakte, zodat de metingen aan weerszijden op één lijn kunnen worden gelegd.

Zonder die tijdstempel toont het log een gat en niemand kan zeggen of de client of het netwerk het sloot. Twee runs met de gebeurtenis op verschillende plekken zijn meer waard dan tien zonder. Gebruik de eigen verbindings- en herverbindingsbesturing van de client. Schakel de kill switch niet uit en duw geen verkeer buiten de tunnel om te zien wat er gebeurt, want op een beheerde laptop is dat een beleidsschending en op je eigen machine creëert het precies de blootstelling waarvoor je testte.

Houd een log klein genoeg om het af te maken

Zes velden per meting: tijd, clientversie, eindpunt, toegangsnetwerk, gebeurtenis, resultaat. Laat webadressen, payloads, tokens en alles wat een sessie-identificator draagt weg, want het log is bewijs over de tunnel en niets anders. Houd het naast de lus zodat de volgende persoon het opnieuw kan draaien zonder te vragen wat de kolommen betekenen.

Herhaal de test na een wijziging met dezelfde probe en hetzelfde interval; verwissel je bestemming en clientversie tegelijk, dan hoort het resultaat bij geen van beide. Een schone run van tien minuten is bewijs voor die omstandigheden en die bestemming, geen belofte over het hotelnetwerk van volgende maand. Bewaar het script en de logsjabloon waar je ze kunt vinden. De gedocumenteerde beperkingen van WireGuard zijn het lezen waard voordat je een onderbreking aan het protocol toeschrijft.

Gerelateerde artikelen