Internet radi samo uz uključenu VPN aplikaciju? Provjerite četiri sloja
Na Windowsu VPN aplikacija za sobom ostavlja proxy, virtualni adapter, rute i DNS. Prođite četiri sloja po redu, uz naredbe za Linux i macOS za svaki.
Isprobate besplatni VPN klijent ili proširenje preglednika tjedan dana, isključite ga i internet stane. Ikona Wi-Fi veze još pokazuje vezu, drugi uređaji na istom routeru rade, a jedino što vraća pregledavanje jest ponovno uključivanje aplikacije ili njezino uklanjanje. Taj obrazac nije šifriranje koje stvara ovisnost. To je konfiguracija koju je aplikacija zapisala negdje gdje tunel nije vlasnik.
Klijent mijenja postavke koje tunel ne posjeduje
Klijent za privatnost na Windowsu ili macOS-u obično dira tri mjesta odjednom. Postavlja sistemski HTTP proxy, isto polje koje izlaže Internet Options. Instalira virtualni adapter, često TAP pogon, kako bi mogao hvatati pakete. I prepisuje popis razrješivača, dok pri pritisku na odspajanje nestaje samo tunel.
Proširenje preglednika uža je stvar. Ono obično mijenja vlastiti profil ili proxy koji slijedi jedan preglednik. Zato jedan preglednik može otkazati dok alati naredbenog retka rade dalje, ili obratno: proširenje nikada nije imalo ovlast dirati ostale slojeve. Koji je sloj uredilo, odlučuje koji će alati pući.
Bilo kako bilo, tu zastarjelu odluku donio je softver koji je nije imao razloga poništiti. Tunel je bio vidljivi dio i ujedno jedini dio s čistim putem za gašenje. Sve ostalo je postavka u spremištu koje nadživi proces, pa je uklanjanje aplikacije jedini korak koji poništava sva tri odjednom. Čitanje tih spremišta prije ponovne instalacije ono je što simptom pretvara u dijagnozu.
Tri ostatka, tri različita kvara
Prvi ostatak je proxy koji ne pokazuje ni na što: okvir LAN proxyja još je označen ili URL skripte konfiguracije cilja na port localhosta na kojem više nema procesa koji sluša. Preglednik prosljeđuje svaki zahtjev tom mrtvom portu i zapne dok istek vremena ne izgleda kao mrtva mreža. Drugi je adapter koji još drži zadanu rutu, jer TAP-Windows uređaj ili dobavljačev usmjerivački pogon ostaje stvarno sučelje i nakon uklanjanja. Zadržava rutu koju je dobio, a promet nestaje u tunelu kojeg nema. Nijedan se ostatak ne najavljuje; oba izgledaju točno kao ispad.
Treći je DNS i on otkazuje ranije od ostalih dvaju. Ako popis razrješivača sadrži samo poslužitelje dostupne kroz tunel, svako se pretraživanje prekida prije nego što je ijedna stranica zatražena, pa preglednik prijavljuje nedostupno mjesto, a ne mrtav proxy. Koji god da imate, nijedan nije ispad u mrežnom smislu. Svaki je ostatak koji nitko nije opozvao i svaki se popravlja na drugom mjestu.
Prođite četiri sloja po redu
Pođite od onoga najbližeg aplikaciji i spuštajte se, jer slojevi otkazuju tim redom vidljivosti. Mijenjajte jedan sloj po testu i ponovno testirajte nakon svakog. Vraćanje svega odjednom obično vrati pregledavanje i ostavi vas bez mogućnosti da kažete koji je ostatak to prouzročio, pa sljedeća instalacija stvara istu zagonetku. Red je proxy, adapteri, rute, razrješivači.
Na Windowsu je svaka provjera jedna naredba koja dolazi sa sustavom, pa ništa ne treba instalirati. Pokrenite ih po redu i držite izlaz zajedno, jer četiri odgovora imaju smisla samo jedan uz drugi. Prijavljuju proxy, adaptere, IPv4 rute i popis razrješivača, tim redom:
netsh winhttp show proxy
Get-NetAdapter
route print -4
Get-DnsClientServerAddress
Linux i macOS traže vlastite naredbe i one nisu zamjenjive. Na Linuxu rute dolaze iz ip route, a razrješivač iz resolvectl status gdje njime upravlja systemd-resolved, uz oslonac na cat /etc/resolv.conf. Na macOS-u rute dolaze iz netstat -rn, razrješivači iz scutil --dns, a sistemski proxy iz scutil --proxy. Čitatelj na macOS-u koji pokrene ip route dobiva command not found, a /etc/resolv.conf ondje je generirani stub, a ne mjerodavna konfiguracija. Provjerite platformu prije sloja, inače prva naredba postaje nalaz.
Za svaki sloj postavite jedno pitanje: pokazuje li ta vrijednost još na nešto što postoji dok je aplikacija zatvorena? Proxy na mrtvom portu, adapter bez tunela, zadana ruta kroz ugašeno sučelje i razrješivač unutar tunela svi odgovaraju ne. Ijedno jedino ne dovoljno je da objasni simptom, zato je važna jedna promjena po testu.
Proxy nije tunel
Proxy prima zahtjev, dohvaća ga negdje drugdje i vraća odgovor, što znači da zna odredište i vidi sve što stranica sama nije šifrirala. Ne prenosi druge protokole. Ne štiti put ako odredište već ne koristi TLS. I može ga promijeniti sve što ga je instaliralo, bez vašeg sudjelovanja.
Ta razlika mijenja pitanje koje vrijedi postaviti. Kad proxy ostane za vama, otkrijte koji program još usmjerava vaš preglednik, a ne je li tunel podignut. Tunel može biti posve zdrav i potpuno nevažan za kvar.
Ako želite znati što je takav klijent doista učinio, promatrajte ga umjesto da čitate njegovu nadzornu ploču. Process Monitor bilježi koje ključeve registra i datoteke dira, a snimanje paketa otkriva kamo je otišao njegov promet. Oboje su obični alati i oboje odgovaraju na pitanje ostatka bolje od bilo kojeg statusnog svjetla. Nijedan ne traži da aplikacija još radi.
Uklonite komponentu, ne dokaz
Trajno rješenje je ukloniti ono što je zapisalo postavku. Deinstalirajte aplikaciju, obrišite virtualni adapter koji je dodala, počistite proxy i popis razrješivača, zatim ponovno pokrenite računalo i testirajte dok je aplikacija još uklonjena. Ako pregledavanje tada radi, našli ste uzrok, a ne zaobilazno rješenje. Zapišite koji je sloj bio zastario, jer isti dobavljač obično istu grešku isporuči dvaput.
Ako se simptom vrati nakon instalacije sljedećeg klijenta, prođite četiri sloja ponovno prije nego zaključite da je usluga nešto pokvarila. Dokazi su obično još ondje, na jednom od četiri mjesta. Druga aplikacija ne stvara peti sloj; ona uređuje jedan od četiri.
Ponovna instalacija vraća proxy, ali ne zastarjeli adapter, i može ostaviti dva razrješivača na popisu. Zbog te asimetrije deinstaliraj-pa-testiraj pobjeđuje gumb za vraćanje svega. Daje vam i osnovicu za usporedbu sljedeći put kad veza padne.