Odaberete zemlju, povežete se, a web-stranica vas dočeka u drugoj. Oznaka na popisu nikada nije ništa obećala o adresi s koje ćete izaći: to je polje koje je neko objavio, izvedeno metodom koju niste vidjeli. Tretiranje tog polja kao adrese jeste mjesto na kojem počinje zabuna.

Tri odvojene stvari nose vrijednost zemlje i mogu se razlikovati bez da iko laže. Kad ih razdvojite, nesklad postaje dijagnostički, a ne tajanstven.

Tri različite stvari nose oznaku zemlje

Prvo je vlastito polje direktorija, koje operater može sam prijaviti, izvesti iz baze adresa ili jednostavno kopirati pri stvaranju unosa. Drugo je sama adresa, koja pripada mreži koja je objavljuje, i na to odgovara upit geolokacije koristeći objavljene podatke o mapiranju u obliku opisanom u RFC 8805. Treće je ono što aplikacija odluči prikazati, a to može doći iz druge baze, iz postavke računa ili iz dozvole koju ste dali na uređaju. Samo je drugo mrežna činjenica, a i ono je upit, a ne opažanje.

Sklad među tim trima bio bi ugodan i nigdje nije obavezan. Nesklad je dokaz da su izvedeni na različite načine, ništa više.

Provjerite adresu, ne zastavu

Korisno pitanje je s koje javne adrese vaš promet zapravo izlazi. Na to se može odgovoriti iz klijenta i to ne zavisi od nijednog polja popisa. Uporedite odgovor s prefiksom koji ste očekivali i s onim što upit geolokacije kaže o njemu, držeći dva rezultata odvojeno u svojim bilješkama. Razlika između očekivane zemlje i upita pitanje je rutiranja ili baze, a razlika između upita i mišljenja aplikacije opet je pitanje baze.

Provjeru obavite dvaput ako usluga ima nekoliko izlaza u regiji. Bazen može davati različite adrese na uzastopnim vezama, a jedan uzorak opisuje samo jedan od njih.

Blizina na karti nije blizina na mreži

Obližnja zemlja može biti duži put od udaljene, jer optička ruta ne prati granicu. Biranje čvora radi latencije znači mjerenje odredišta koje vam je važno, a ne biranje najbliže zastave. Ista logika vrijedi i za kapacitet, jer lagano opterećen izlaz dvije zemlje dalje može pobijediti zasićen onaj pored. Prvo mjerite, zatim odlučite, i zapišite sat jer se oba broja mijenjaju.

Lokacija također ne govori ništa o zadržavanju ni o tome ko upravlja krajnjom točkom. Za to su potrebni vlastiti dokazi, koje kolona zemlje ne može sadržavati.

Sami potvrdite adresu izlaza

Pitajte klijent i vanjsku uslugu kako izgleda vaša adresa, zatim pitajte lokalnu tablicu rutiranja kako je taj put odabran. Naredbe ispod rade sve tri stvari, a treću ljudi preskaču. Zamijenite naziv sučelja svojim tunelskim uređajem.

curl -sS https://api.ipify.org; echo
curl -sS --interface tun0 https://api.ipify.org; echo
ip route get 1.1.1.1
ip -6 addr show dev tun0

Prva dva retka trebaju se slagati, a kad se ne slažu, ruta koju mislite da imate nije ruta koja nosi vaš promet. Upit rute imenuje sučelje i izvornu adresu koje bi jezgra koristila za odredište, i to je mehanizam iza adrese izlaza. Redak za IPv6 je važan jer stroj može držati tunel za jednu obitelj i izravan put za drugu. Oznaka zemlje sama po sebi ne pokriva nijedan od tih slučajeva.

Zapišite opaženu adresu, mišljenje baze i prikaz aplikacije kao tri odvojene bilješke. Sljedeći nesklad na koji naiđete tada će biti lako pripisati.

Povezani članci