Чому сайт досі знає ваше місто через VPN
Сайт може незалежно використовувати дозвіл на геолокацію в браузері та вашу публічну IP: перевірте дозвіл для джерела, налаштування ОС і збережене місто.
Два механізми можуть вивести місто на екран, і лише один із них враховує, звідки виходить ваш VPN. Geolocation API браузера повертає положення пристрою, коли сторінка має дозвіл, а пошук за IP оцінює регіон за адресою, з якої надійшов запит. Сайт, який показує ваше справжнє місто, поки тунель працює в іншій країні, зазвичай використовує перший механізм або читає місто, збережене кілька місяців тому. Ці випадки розділяють п'ять кроків.
Перший крок: визначити, який механізм може відповісти
Почніть із питання, що сторінка взагалі може знати. Положення пристрою потребує виклику API та рішення про дозвіл і дає точну координату. Оцінка за IP не вимагає від користувача нічого і дає в найкращому разі місто, часто неправильне. Збережене налаштування акаунта не потребує ні того, ні іншого і переживає будь-яку зміну мережі.
Ці три джерела пояснюють майже кожен звіт. Картографічний сайт, що центрується на вашій вулиці, використовує API. Магазин, який вітає вас не тією мовою, використовує оцінку за IP. Новинний сайт, який після переїзду продовжує показувати ваше рідне місто, використовує те, що зберіг ваш акаунт.
| 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 |
Другий крок: прочитати дозвіл саме для цього джерела
Браузери пам'ятають рішення про дозвіл для кожного джерела, тому сайт, якому ви дозволили торік, відкривається без нового запиту. Перегляньте запис про місцеположення саме для цього сайту в налаштуваннях сайтів браузера, а не глобальне значення за замовчуванням, бо глобальне налаштування визначає лише те, що відбувається, коли нічого не збережено.
Потім перевірте операційну систему. Браузеру на сучасному комп'ютері чи телефоні потрібен ще й дозвіл платформи на геолокацію, а відхилений дозвіл платформи змушує API завершуватися помилкою навіть тоді, коли сайт дозволено. Доступне положення може надходити від служб платформи, які не мають стосунку до тунелю.
Дві технічні умови пояснюють більшість збоїв, схожих на проблеми з VPN. API потребує безпечного контексту, тому звичайна сторінка HTTP взагалі не може його використовувати, а вбудовані фрейми можуть блокуватися Permissions Policy сторінки. Відхилений запит тому значно частіше є результатом браузера або політики сторінки, ніж мережі.
Третій крок: підтвердити адресу виходу новим запитом
Запитайте незалежний сервіс, яку адресу він бачить, із того самого браузера, який ви тестуєте. Застаріла вкладка, service worker або сторінка з кешу можуть повідомити вчорашню відповідь, а порівняння свіжої відповіді з тим, що показує сайт, знімає цей сумнів.
curl -s https://ifconfig.me
curl -s https://ipinfo.io/json
Запустіть їх із машини, а не з роутера, і запишіть адресу та країну, які повертає кожна команда. Якщо обидві повідомляють країну VPN, а сайт досі показує ваше рідне місто, вихід не є джерелом, і залишаються дозвіл, збережені дані та шлях витоку.
Шляхи витоку — третя можливість: розширення браузера з власним мережевим стеком, маршрут split-tunnel, що надсилає сайт поза тунель, або шлях IPv6, який тунель не переносить. Кожен видно в самому запиті, тому перевірка виходу йде перед будь-якою зміною налаштувань. Розширення з власними налаштуваннями proxy — те, що люди проґавлять, бо воно може обійти тунель для однієї вкладки.
Четвертий крок: подивитися, що акаунт уже зберіг
Відкликання дозволу впливає на майбутній доступ за правилами браузера і не видаляє положення, яке сервіс уже зберіг. Збережене рідне місто, адреса доставки або регіон профілю залишаються, доки застосунок їх не оновить, і сайт усе ще може зробити приблизну оцінку за адресою виходу.
Пошукайте власне керування місцеположенням на сайті, перш ніж робити висновок, що винний браузер. Багато застосунків тримають ручний вибір регіону, який скасовує будь-яку автоматичну оцінку, і агент підтримки, що читає запис акаунта, бачить саме це значення, а не ваше поточне з'єднання.
Там, де збережене значення важливе, змініть його в акаунті та запишіть дату. Це дасть вам другу точку даних, коли старе місто з'явиться знову. Скриншот сторінки акаунта до зміни цінніший за опис після неї.
П'ятий крок: змінювати по одній змінній
Тестуйте у фіксованому порядку: свіжа перевірка виходу, дозвіл джерела, дозвіл платформи, налаштування акаунта, потім інший профіль браузера. Зміна кількох речей одразу робить джерело невизначуваним, і так відповідь на п'ять хвилин перетворюється на тиждень здогадок.
Запишіть, що ви змінили і що сторінка показала після цього. Якщо відображення змінюється лише в приватному вікні, причина — збережений стан; якщо воно не змінюється ніколи, сторінка використовує оцінку за IP або значення акаунта, на яке браузер не може вплинути. Тримайте «до» і «після» в одній нотатці, бо саме закономірність є доказом.
Будьте чесними у висновку: VPN змінює адресу, з якої надходить запит, а Geolocation API — окремий канал із дозволом, якого тунель не торкається. Обидва факти можуть бути правдивими одночасно, і більшість заплутаних звітів виникає через те, що їх вважають альтернативами.