Adrese resolvera koje izgledaju strano stalno se pojavljuju u rezultatima DNS testova, a zaključak do kojeg ljudi dolaze uvijek je isti: upiti su sigurno pobjegli iz tunela. Ponekad jesu. Češće izvještaj opisuje koja rekurzivna usluga je odgovorila i gdje baza podataka misli da se ta adresa nalazi, a to je tvrdnja o infrastrukturi, ne o vašim paketima. Da bi se zapažanje odvojilo od zaključka, potrebne su tri činjenice: ko je odgovorio, kako je ime putovalo i kakvu ste politiku zapravo podesili.

Pročitajte šta je test zaista primijetio

Većina testnih stranica radi isto: zamoli klijenta da razriješi jedinstveno ime hosta i zatim potraži koji ga je resolver preuzeo, ili jednostavno vrati adresu resolvera koju klijent prijavi. To identifikuje rekurzivnu uslugu i, ako je upit nosio informaciju o klijentskoj podmreži, grubu mrežnu lokaciju. To ne dokazuje da je upit napustio uređaj izvan tunela, a svakako ne dokazuje da je isti put korišten za svako ime. Jedno zapažanje jednog pretraživanja uopštava se u tvrdnju o cjelokupnom saobraćaju.

Test koji pokazuje adresu resolvera korisniji je od oznake zemlje, jer se adresa može uporediti sa listom resolvera koju je klijent zaista dobio.

Anycast i prosljeđivanje objašnjavaju većinu iznenađenja

Veliki javni resolveri najavljuju istu adresu sa mnogo lokacija, a mreža usmjerava svaki upit ka lokaciji koja je po rutiranju najbliža. Geolokacijska baza zatim tu adresu svodi na jedno mjesto, koje može biti korporativna adresa registracije na drugom kontinentu ili data centar koji nije onaj koji odgovara. RFC 4786 pokriva operativnu praksu za anycast usluge i teškoću povezivanja takve adrese s jednim fizičkim mjestom. Karta je pojednostavljenje odluke o rutiranju i pojednostavljuje u smjeru koji daje zabrinjavajuće rezultate.

Prosljeđivanje dodaje drugi sloj. Lokalni stub resolver, ruter ili resolver provajdera može proslijediti upite usluzi iznad, a ime koje se pojavi u testu odražava posljednjeg operatora u tom lancu, a ne prvog. Ekstenzije klijentske podmreže mogu učiniti da odgovor odozgo bude prilagođen vašoj mreži, dok prijavljena lokacija izgleda kao mjesto na kojem nikada niste bili.

Podešeni resolver stoga može biti ispravan i ipak dati rezultat koji izgleda strano, a resolver u vašoj zemlji može biti pogrešan jer pripada strani koju niste odabrali.

Ko je primio ime i kojim putem

Dva pitanja odgovaraju na praktični dio: koji server klijent koristi i da li se do tog servera dolazi kroz tunel. Uporedite listu resolvera s adresom iz rezultata testa prije nego što zaključite nešto o rutiranju, zatim provjerite da upit na tu adresu izlazi kroz interfejs tunela. Ako se dvije adrese razlikuju, zanimljiv nalaz je da je nešto prepisalo ili zaobišlo namjeravani resolver, što zaslužuje pažljiviji pogled od imena zemlje.

resolvectl query example.com
resolvectl status | grep -A3 'DNS Servers'
dig +short TXT whoami.akamai.net

Prva naredba pokazuje koji je server odgovorio za neko ime, druga pokazuje podešenu listu i njen obim, a treća prijavljuje adresu resolvera onako kako je vidi javna usluga. Kada se sve tri slažu, politika radi ono za šta je podešena, šta god oznaka zemlje govorila.

Uporedite s politikom koju ste odabrali

VPN koji nameće resolver, preglednik podešen da koristi vlastiti šifrirani DNS i operativni sistem koji preferira postavke jednog interfejsa mogu pojedinačno biti ispravni, a zajedno proturječni. Moderni preglednici mogu slati upite šifriranim transportom provajderu odabranom u pregledniku, što namjerno zaobilazi sistemsku listu resolvera. To nije curenje u smislu pokvarenog tunela; to je politika odabrana negdje drugo, a pronalaženje gdje je odabrana pravi je zadatak.

Radni uređaji dodaju pravila za pojedine domene: interna imena moraju ići organizacijskom resolveru, dok sve ostalo slijedi zadano. Zamjena tog uređenja zato što je testna stranica pokazala neočekivanu zemlju jeste način na koji interna imena prestanu da se razrješavaju za cijeli tim.

Držite testove uskim i sigurnim

Upit javnoj testnoj usluzi za interno ime hosta otkriva ime strani koja s njim nema posla, a odgovor vam ne kaže ništa što lokalno čitanje liste resolvera ne bi reklo.

Umjesto toga koristite imena koja otkrivaju infrastrukturu, zabilježite adresu resolvera, obim i korišteni interfejs i uporedite taj zapis s dokumentovanom namjerom. Oznaka na karti je kontekst za razgovor, a ne rezultat prolaz ili pad, i tretiranje kao presude stvara izmjene konfiguracije umjesto dijagnostike.

Povezani članci