Sådan tester du VPN-stabilitet uden at logge din browsing
Bevis tunnelstabilitet med en fast probe, fire samplede fakta og en tidsstemplet hændelseslog i stedet for at sende den daglige browsing gennem testen.
Du vil vide, om tunnelen overlever, at en laptop går i dvale, en gåtur mellem adgangspunkter, eller en times opkald, og du vil helst ikke give nogen en log over alt, hvad du læser, mens du finder ud af det. Tre ting besvarer det: en fast probe, de samme fire fakta samplet efter en plan og den hændelse, der ændrede dem, skrevet ned. Ti minutter med det slår en eftermiddag med at se en side undlade at indlæse. Den log, du ender med, er også kort nok til at vedhæfte en sag uden at sladde halvdelen.
Beslut, hvad stabil skal betyde
“VPN’en faldt” er fire forskellige fejl i ét ord. Peeren kan miste sit handshake, ruten kan falde tilbage til den lokale gateway, navneopløsning kan gå til en server, der aldrig svarer gennem tunnelen, eller alt det kan være sundt, mens én applikation stadig fejler. Beslut, hvilken der passer til dit symptom, før du indsamler noget, for hver kræver sin egen probe. Vælg så et interval, du kan holde: én prøve hvert tredivte sekund i ti minutter fanger en roaming, uden at testen bliver til arbejdsbyrde.
Hvis klagen er et opkald, der fryser, når du går ud i køkkenet, er den egenskab, du har brug for, om en frisk forespørgsel fuldføres efter roamingen. Det kan tjekkes på én linje, og det registrerer slet ingen browsing.
Fastlæg én uskyldig probe
Vælg en destination, du må forespørge på, og som ikke er knyttet til dine konti: en dokumentationsvært, et internt statusendepunkt eller selve tunnelens gateway. Gør handlingen gentagelig, for eksempel curl -s -o /dev/null -w "%{http_code} %{time_total}\n" https://example.com/, som udskriver én linje pr. forsøg. Hold det outputformat fast hele kørslen igennem. En statuskode og en varighed indsamlet på samme måde to gange er det, der gør to kørsler sammenlignelige.
Modstå det websted, du faktisk er afhængig af. En bank- eller webmailside trækker trackere, omdirigeringer og personligt indhold ind i målingen og udskriver sessionsidentifikatorer i alt, hvad du senere sætter ind i en sag. Brug den samme destination gennem hele undersøgelsen, og noter den ved siden af intervallet.
Sample de fire fakta
Peer-tilstand, rute, resolver og én frisk forespørgsel er de fire observationer, og hver har en billig kilde. På WireGuard giver wg show wg0 latest-handshakes peerens tidsstempel, og ip route get 1.1.1.1 viser, hvilken grænseflade kernen ville bruge. På OpenVPN står samme tilstand i den statusfil, som --status /run/openvpn/status 10 skriver, eller bag state på administrationsgrænsefladen. En Windows-klient bliver i PowerShell med Get-NetAdapter og Resolve-DnsName.
Sæt dem i løkke i én terminal, så hver linje bærer et tidsstempel: for i in $(seq 1 20); do date -Is; wg show wg0 latest-handshakes; ip route get 1.1.1.1; sleep 30; done. Den løkke dækker tre af de seks logfelter; klientversionen skrives ind én gang øverst, og hændelsens tidsstempel tilføjes, når hændelsen sker.
Resolveren er det faktum, folk springer over, og dig +short skjuler det, fordi den form kun udskriver svaret. Spørg udtrykkeligt efter serveren med dig example.com | grep SERVER:, eller brug nslookup example.com, hvor dig ikke er installeret, som udskriver adressen på den server, forespørgslen gik til. Et gammelt handshake på en inaktiv tunnel er heller ikke automatisk en fejl, da WireGuard kun fornyer nøgler, når der er trafik at beskytte.
Fremkald hændelsen, ikke en lækage
Tag fem rolige minutter som baseline før den hændelse, du er interesseret i, hvad enten det er at lukke låget, gå til et andet adgangspunkt eller skifte til en telefons hotspot. Noter det tidspunkt, du forårsagede den, så prøverne på hver side kan linjes op.
Uden det tidsstempel viser loggen et hul, og ingen kan sige, om klienten eller netværket lukkede det. To kørsler med hændelsen forskellige steder er mere værd end ti uden. Brug klientens egne kontroller til at afbryde og genoprette forbindelsen. Slå ikke kill switch fra, og skub ikke trafik uden for tunnelen for at se, hvad der sker, for på en administreret laptop er det en politikbrud, og på din egen maskine skaber det netop den eksponering, du testede for.
Hold en log så lille, at den kan færdiggøres
Seks felter pr. prøve: tid, klientversion, endepunkt, adgangsnetværk, hændelse, resultat. Udelad webadresser, payloads, tokens og alt, der bærer en sessionsidentifikator, da loggen er bevis om tunnelen og intet andet. Hold den ved siden af løkken, så den næste person kan køre den igen uden at spørge, hvad kolonnerne betyder.
Efter en ændring gentages testen med samme probe og samme interval; bytter du destination og klientversion på én gang, tilhører resultatet ingen af dem. En ren ti minutters kørsel er bevis for de forhold og den destination, ikke et løfte om næste måneds hotelnetværk. Opbevar scriptet og logskabelonen, hvor du kan finde dem. WireGuards dokumenterede begrænsninger er værd at læse, før du tilskriver protokollen et udfald.