Den offentlige VPN-liste siger online; din klient siger nej
En mappe viser et tjek fra få minutter siden, ikke et løfte om dit næste forsøg. Gå gennem forbindelsens faser i rækkefølge, og se hvor noden reelt svigter.
Du åbner mappen, sorterer efter hastighed, vælger en node markeret som online, og klienten giver op, før den bliver færdig med at forbinde. Listen løj ikke ligefrem. Den rapporterede resultatet af en andens sondering, fra et andet netværk, på et tidligere tidspunkt, mod en tjeneste, som en frivillig kan slukke når som helst. Forståelsen af det gab gør en frustrerende jagt til en kort række tjek, du kan køre på enhver kandidat.
Hvad listen faktisk målte
En offentlig mappe gemmer felter som et seneste tjek-tidspunkt, en observeret rundtur-værdi, et sessionstal og nogle gange en protokol-liste. Hvert af dem beskriver den seneste vellykkede observation fra projektets eget synspunkt, ikke nodens tilstand, når din pakke ankommer.
Friskheden betyder mere end tallet. En node, der blev tjekket for fire minutter siden, og en node, der blev tjekket for fire timer siden, kan vise den samme grønne markering, og kun én af dem ligner stadig den registrerede tilstand. Se efter tidsstemplet, ikke farven.
Frivillig drift tilføjer en anden ændringskilde, som ingen overvågning kan rette. Operatøren genstarter måske en bærbar, løber tør for båndbredde, skifter udbyder eller lukker bare låget. En post på listen er en kandidat, og at behandle den som en serviceaftale er en kategorifejl.
Hold øje med klientens faser, ikke spinneren
Enhver VPN-klient gennemløber den samme brede sekvens: opløs navnet, åbn en transportforbindelse, forhandl sikkerhed, godkend, opsæt derefter tunnelen og send data. Et svigt i hver fase efterlader forskellige spor, og spinneren viser ingen af dem.
Begynd med navneopløsning. Hvis værtsnavnet ikke kan opløses, er intet om nodens tilgængelighed blevet testet, fordi forbindelsen aldrig forlod din maskine. Dernæst transporten: en afvist eller tidsudløbet TCP- eller UDP-udveksling fortæller dig, at endepunktet ikke svarer på den port, hvilket er et reelt fund om noden. Så forhandling og godkendelse, hvor et forkert certifikat, en udløbet profil eller en uoverensstemmende cipher fejler, mens noden er helt sund. Først efter at tunnelen er sat op, kan en routing- eller DNS-fejl forklare det sidste trin.
Læs klientloggen med den højeste detaljeringsgrad, der stadig passer på skærmen, og noter den sidste linje, der lykkedes. Den linje er, hvor diagnosen begynder, og den er som regel mere oplysende end noget, mappen viser.
Én variabel for hvert forsøg
Sammenlign kandidater med den samme klient, det samme adgangsnetværk og det samme profilformat, og skift kun endepunktet. Ellers kan en fejl være din, og du vil tilskrive den noden.
To forsøg er nok til at fastslå et mønster, og et tredje bekræfter det. Hvis node A fejler i transportfasen, og node B fejler ved godkendelsen, har du to uafhængige problemer i stedet for én forældet liste.
Når hver node fejler på samme måde
En universel fejl i den første fase peger på din side: en resolver, der ikke kan svare, en lokal firewall, der blokerer protokollen, eller et netværk, der kun tillader webtrafik. Mappen kan ikke rapportere det, fordi dens sonderinger ikke kører fra din plads.
Afprøv bevidst tilfældet med et formet netværk. Nogle adgangsnetværk tillader HTTPS til nettet og dropper andre protokoller, hvilket får hver kandidat til at se død ud, mens listen er præcis. At sammenligne en sideindlæsning i browseren med et råt forbindelsesforsøg adskiller de to situationer på under et minut.
Læs fejlen i den fase, hvor den opstod
Genskab forsøget fra en terminal, så faserne er synlige. De tre kommandoer nedenfor opløser navnet, tester, om porten svarer, og udskriver forhandlingslinjerne fra en OpenVPN-profil:
dig +short node.example.net
curl -s --max-time 5 telnet://node.example.net:443
openvpn --config node.ovpn --verb 4 2>&1 | grep -iE "TLS|AUTH|PUSH"Hvis porten svarer, og forhandlingslinjen rapporterer et certifikatproblem, er noden oppe, og din profil er forældet. Hvis porten slet ikke svarer, er posten en kandidat, der fejlede, og at gå videre til den næste er det rigtige svar i stedet for at fejlfinde din klient. Noter fasen på en kort linje, og det næste forsøg begynder med viden i stedet for håb.