Zašto hotspot preusmjerava DNS prije nego se VPN poveže?
Hotspot prepisuje upite na svojoj mreži, a hostname kao krajnja tačka razrješava se prije nego što ikakav tunel postoji. Pratite koji je razrješivač odgovorio na svaki upit.
Pridruživanje hotelskoj mreži stavlja pred vas dvije DNS odluke u različitim trenucima: upite koje uređaj šalje tokom prijave i upite koji se šalju nakon što je tunel podignut. Hotspot može uticati na prve kroz mrežu koju kontroliše. Drugi zavise od politike samog klijenta, što je odvojena stvar za provjeru.
Prođite kroz vezu po redu, od prvog DHCP zakupa do upita koji je razriješio privatno ime. Tada se dva kvara koja u zahtjevu za podršku izgledaju identično čisto razdvajaju: jedan se dogodio prije nego što je tunel postojao, a drugi unutar njega.
Šta hotspot može, a šta ne može dotaknuti
Pristupna mreža dodjeljuje adresu razrješivača putem DHCP-a i može presresti port 53 prema toj adresi. To je dovoljno da se svaki nezaštićeni upit odgovori adresom portala ili stranicom blokade. To je dovoljno i da se razbije VPN klijent čija je krajnja tačka zapisana kao ime hosta.
Ono što hotspot ne može jeste čitati ili prepisivati upit kad putuje unutar uspostavljenog tunela, pod uslovom da ga tunel zaista nosi. Presretanje zavisi od toga da se vidi pitanje u čistom tekstu.
Upiti ipak napuštaju tunel iz razloga nepovezanih s hotspotom: postavke sigurnog DNS-a u pregledniku, pravilo split-DNS koje zadržava korporativni sufiks na lokalnom razrješivaču ili klijent konfigurisan da isključi DNS iz tunela. Svaki je izbor na strani klijenta i svaki izgleda kao smetnja hotspota kad se gleda izvana.
| Path | Who answers | What a failure looks like |
|---|---|---|
| Lookup before the tunnel is up | The network's resolver | The client never reaches its endpoint |
| Lookup inside the tunnel | The resolver pushed by the client | Local policy or tunnel DNS is misconfigured |
| Browser secure DNS | A DoH provider over port 443 | Both the hotspot and the tunnel policy are bypassed |
Početni upit se događa prije nego što tunel postoji
Klijent koji dobije ime hosta mora ga prvo razriješiti i u tom trenutku nijedan tunel ne štiti upit. Ako hotspot odgovori adresom portala, pregovori propadaju ili se zakače. Ako odgovori ničim, klijent prijavi grešku imena i tunel nikad ne počne. Svaki od dva ishoda objašnjava prazan dnevnik tunela koji inače izgleda bezazleno.
Operativni sistemi izvode i vlastite provjere povezanosti i otkrivanja portala, opisane u RFC 8910 i RFC 8952, a ti zahtjevi odlaze prije nego što je bilo koji VPN podignut. Vidjeti ih u dnevniku proxyja je očekivano ponašanje, a ne dokaz curenja.
Praktično rješenje je dati klijentu krajnju tačku kojoj ne treba upit. Kada je to nemoguće, prvo završite prijavu pa se onda povežite.
Saznajte koji je razrješivač odgovorio
Pitajte sistem, a ne preglednik, i pokrenite upit dvaput: jednom kroz razrješivač koji uređaj trenutno koristi, jednom prema fiksnoj adresi.
resolvectl query vpn.example.com dig +short vpn.example.com dig +short vpn.example.com @1.1.1.1
Odgovor prve komande koji se razlikuje od treće govori vam da lokalni razrješivač vraća nešto drugo, a to je upravo ono što radi hotspot koji preusmjerava. Neuspjeh treće uz uspjeh prve upućuje na portal: lokalni razrješivač je poslužio adresu za prijavu dok je odlazni port 53 odbačen. Isticanje vremena na oba znači da mreža odbacuje DNS dok se autentifikacija ne završi.
Ponovite nakon povezivanja i uporedite. Keširani odgovor preživi prelaz, zato ispraznite keš ili upitajte novo ime za drugo posmatranje.
Zadržite kasnije upite na putu koji ste namjeravali
Profil punog tunela koji hvata i DNS je najjednostavniji aranžman: svaki upit svake aplikacije ide razrješivaču koji tunel gura, a lokalna mreža vidi samo šifrirani saobraćaj. Dokažite to razrješavanjem internog i javnog imena nakon povezivanja, pa uporedite oba odgovora s onim što razrješivač tunela vraća sam.
Split-DNS traži listu domena napisanu s namjerom: korporativni sufiksi kroz tunel, sve ostalo lokalno, i bez preklapanja između toga dvoje.
Sigurni DNS preglednika stoji izvan te politike, pa ako mora biti isključen da bi se profil ponašao predvidljivo, isključite ga za taj profil, a ne za mašinu. Uradite to u postavkama preglednika, a ne uređivanjem sistemskog razrješivača, da promjena bude vidljiva sljedeći put. Zabilježite odgovor, razrješivač i fazu veze u jednom redu po testu. Izvještaj koji kaže da je DNS pao na hotelskom Wi-Fi-u opisuje simptom s najmanje tri različita uzroka.