Часовий пояс браузера проти геолокації за IP: порівняння сигналу ризику
Пояс браузера й пояс, виведений з IP, вимірюють різні речі. Порівняйте, що може довести кожен, перш ніж розбіжність стане вердиктом про VPN у вашій моделі ризику.
Браузер повідомляє Europe/London, а база IP розміщує запит в America/New_York. Це розбіжність двох спостережень, і її варто зафіксувати. Це не доказ того, що відвідувач використовує VPN, і саме ставлення до неї як до доказу — місце, де більшість реалізацій помиляються. Порівняння нижче тримає два значення та їхні режими відмови окремо.
Два спостереження з різними власниками
Значення браузера — це налаштування: пояс, який операційна система або користувач вибрав для форматування дат. Значення бази даних — це оцінка, прив'язана до IP-мережі, яку створює постачальник, що зіставляє блоки адрес із місцями. Жодне не є автентифікованим твердженням про те, де стоїть відвідувач, і жодне не знає, яким мережевим шляхом пішов запит.
Оскільки власники різні, значення можуть розходитися з причин, які не мають нічого спільного з інструментами приватності. Мандрівник, який зберігає домашній пояс, корпоративний ноутбук, прив'язаний до часу головного офісу, супутникова лінія з регіональним виходом або застарілий рядок бази даних — усе це дає розбіжність.
Як насправді утворюється кожне значення
Браузер може прочитати свій розв'язаний пояс за допомогою new Intl.DateTimeFormat().resolvedOptions().timeZonenew Intl.DateTimeFormat().resolvedOptions().timeZone
, що повертає ідентифікатор IANA, виведений із налаштувань форматувальника. Він не запитує дозвіл на геолокацію і не звертається до GPS. На сервері визначте адресу клієнта з довіреної конфігурації проксі, потім знайдіть її в схваленого постачальника. Заголовок пересилання, наданий відвідувачем, автоматично не є цією адресою.vpnDetectedЗберігайте два спостереження як окремі поля разом із часом спостереження та результатом пошуку. Називання похідного поля
vpnDetected
| , коли обчислення — лише порівняння поясів, вбудовує висновок у вимірювання й ускладнює подальший перегляд. | Що доводять збіг і розбіжність |
|---|---|
| Спостереження | Що залишається невирішеним |
| Різні заявлені пояси | Поїздка, збережене налаштування, корпоративний шлюз, проксі або помилка бази даних — усе це може дати такий результат. |
| Той самий заявлений пояс | Вихід VPN може бути в поясі користувача, тому збіг не встановлює прямого з'єднання. |
Одне значення відсутнє або недійсне
Порівняння недоступне, а це ні збіг, ні розбіжність.
Асиметрія важливіша, ніж показує таблиця. Розбіжність має багато невинних пояснень, а збіг — принаймні одне винне, тож жоден напрям не підтримує категоричного правила. Власні нотатки постачальника про точність описують обмежену точність і відсутні дані й указують, що сервіс анонімізації може розкрити місце свого сервера, а не користувача.
Тому сигнал належить до оцінки ризику із зафіксованою причиною та явним невідомим станом, а не до логічного значення, що керує доступом.
Зсуви UTC — не короткий шлях
Порівняння зсувів замість ідентифікаторів поясів не виправляє висновку. Два різні пояси можуть ділити зсув частину року, і той самий пояс може змінити зсув на межі літнього часу. Якщо функції справді потрібен зсув для планування, обчисліть його для конкретного моменту, а не зберігайте одне число й не використовуйте його знову як доказ особи.
Порівняння рядків має власну пастку: два написання одного поясу або застарілий псевдонім різняться як текст, хоч і описують те саме налаштування. Перевіряйте ідентифікатори й порівнюйте через обробку часових поясів платформи, а не зіставляючи сирі рядки.
Блокувати чи оцінювати: вибирайте реакцію усвідомлено