Varför en webbplats fortfarande vet vilken stad du är i trots VPN
En webbplats kan använda webbläsarens platsbehörighet och din offentliga IP oberoende av varandra: kontrollera behörigheten för ursprunget, OS-inställningen och den sparade staden.
Två mekanismer kan sätta en stad på skärmen och bara en av dem bryr sig om var din VPN går ut. Webbläsarens Geolocation API returnerar en enhetsposition när sidan har behörighet, och en IP-sökning uppskattar en region från adressen som begäran kom från. En webbplats som visar din riktiga stad medan tunneln kör i ett annat land använder oftast den första mekanismen, eller läser en stad som den sparade för månader sedan. Fem steg skiljer dessa fall åt.
Första steget: avgör vilken mekanism som kan svara
Börja med att fråga vad sidan överhuvudtaget kan veta. En enhetsposition kräver ett API-anrop och ett behörighetsbeslut, och den ger en exakt koordinat. En IP-uppskattning kräver ingenting av användaren och ger i bästa fall en stad, ofta en felaktig. En sparad kontoinställning kräver ingen av dem och överlever varje nätverksändring.
Dessa tre källor förklarar nästan varje rapport. En kartsajt som centrerar på din gata använder API:et. En butik som hälsar dig på fel språk använder en IP-uppskattning. En nyhetssajt som fortsätter visa din hemstad efter en flytt använder det ditt konto har sparat.
| What the page shows | Likely source |
|---|---|
| Street-level accuracy | Device position from the Geolocation API |
| City or region only | IP geolocation of the exit address |
| Same city for months | Stored account preference |
| Different result in a private window | Stored permission or cached state |
Andra steget: läs behörigheten för exakt det ursprunget
Webbläsare kommer ihåg behörighetsbeslutet per ursprung, så en webbplats du tillät förra året öppnas utan en ny fråga. Granska plats-posten för just den webbplatsen i webbläsarens webbplatsinställningar i stället för det globala standardvärdet, eftersom den globala inställningen bara avgör vad som händer när ingenting är sparat.
Kontrollera sedan operativsystemet. En webbläsare på en modern dator eller telefon behöver också plattformens platsbehörighet, och en nekad plattformsbehörighet får API:et att misslyckas även när webbplatsen är tillåten. Den tillgängliga positionen kan komma från plattformens tjänster, som inte har något med tunneln att göra.
Två tekniska villkor förklarar de flesta fel som ser ut som VPN-problem. API:et kräver en säker kontext, så en vanlig HTTP-sida kan inte använda det alls, och inbäddade ramar kan blockeras av sidans Permissions Policy. En nekad begäran är därför mycket oftare ett resultat av webbläsaren eller sidans policy än av nätverket.
Tredje steget: bekräfta utgångsadressen med en ny begäran
Fråga en oberoende tjänst vilken adress den ser, från samma webbläsare som du testar. En föråldrad flik, en service worker eller en cachad sida kan rapportera gårdagens svar, och att jämföra ett färskt svar med det webbplatsen visar tar bort det tvivlet.
curl -s https://ifconfig.me
curl -s https://ipinfo.io/json
Kör dem från datorn, inte från routern, och notera adressen och landet som var och en returnerar. Om båda rapporterar VPN-landet och webbplatsen fortfarande visar din hemstad är utgången inte källan, och de återstående kandidaterna är behörighet, sparad data och en läckväg.
Läckvägar är den tredje möjligheten: ett webbläsartillägg med egen nätverksstack, en split-tunnel-rutt som skickar webbplatsen utanför tunneln, eller en IPv6-väg som tunneln inte bär. Var och en syns i själva begäran, därför kommer utgångskontrollen före varje inställningsändring. Ett tillägg med egna proxyinställningar är det folk missar, eftersom det kan kringgå tunneln för en enda flik.
Fjärde steget: se vad kontot redan har sparat
Att återkalla behörigheten påverkar framtida åtkomst enligt webbläsarens regler och raderar inte en position som tjänsten redan har sparat. En sparad hemstad, en leveransadress eller en profilregion finns kvar tills applikationen uppdaterar den, och webbplatsen kan fortfarande göra en ungefärlig uppskattning från utgångsadressen.
Leta efter webbplatsens egen platskontroll innan du drar slutsatsen att webbläsaren är skyldig. Många applikationer har en manuell regionväljare som åsidosätter varje automatisk uppskattning, och en supportmedarbetare som läser kontoposten ser det värdet i stället för din nuvarande anslutning.
Där det sparade värdet spelar roll, ändra det i kontot och notera datumet. Det ger dig en andra datapunkt när den gamla staden dyker upp igen. En skärmbild av kontosidan före ändringen är värd mer än en beskrivning av den efteråt.
Femte steget: ändra en variabel i taget
Testa i en fast ordning: färsk utgångskontroll, ursprungsbehörighet, plattformsbehörighet, kontoinställning, sedan en annan webbläsarprofil. Att ändra flera saker samtidigt gör källan oidentifierbar, och så blir ett svar på fem minuter en vecka av spekulation.
Notera vad du ändrade och vad sidan visade efteråt. Om visningen bara ändras i ett privat fönster är orsaken ett sparat tillstånd; om den aldrig ändras använder sidan en IP-uppskattning eller ett kontovärde som webbläsaren inte kan påverka. Håll före och efter i samma anteckning, eftersom mönstret är beviset.
Var ärlig i slutsatsen: en VPN ändrar adressen som en begäran kommer från, och Geolocation API är en separat kanal med behörighet som tunneln inte rör. Båda fakta kan vara sanna samtidigt, och de flesta förvirrande rapporterna kommer av att behandla dem som alternativ.