Значок VPN в Android увімкнено, тож чому трафік не йде через тунель?
Значок ключа лише каже, що застосунок володіє віртуальним інтерфейсом, а не те, що трафік залишає телефон. Перевірте тип профілю, охоплення за застосунками та політику блокування.
Ключ VPN видно в рядку стану, браузер завантажує сторінку, а адреса, яку повідомляє сайт, — усе ще ваше домашнє підключення. Це поєднання нормальне для Android, бо значок каже, що застосунок володіє віртуальним мережевим інтерфейсом, а не що ваш трафік виходить через віддалений сервер. Локальний застосунок фільтрації використовує той самий засіб. Перевірте, що служба насправді робить, перш ніж звинувачувати постачальника.
Значок означає, що служба VPN володіє інтерфейсом
Служба VPN в Android дозволяє застосунку створити віртуальний інтерфейс і отримувати пакети, скеровані в нього. Що станеться далі, повністю залежить від цього застосунку: він може передати їх віддаленому серверу, відфільтрувати або відкинути. Значок ключа повідомляє, що служба утримує інтерфейс, а не куди йдуть пакети. Тому застосунок фільтрації та повний тунель виглядають у рядку стану однаково.
adb shell dumpsys connectivity | grep -i vpn
adb shell settings get global always_on_vpn_app
Одночасно на користувача чи профіль може бути активною лише одна служба VPN, і це документована поведінка, а не помилка. Коли другий застосунок намагається підключитися, він або перебирає керування, або зазнає невдачі, і трафік першого більше не обробляється. Якщо застосунок фільтрації завершується в момент підключення тунелю, ця конкуренція — ймовірна причина.
Власний профіль або VPN застосунку: вони не взаємозамінні
Профіль IKEv2, який надає платформа, і застосунок, що реалізує OpenVPN або WireGuard, — різні продукти з різними меню. API платформи для IKEv2 існує з певної версії Android, і збірки виробників не всі показують ті самі параметри в одному місці. Знімок екрана з іншого телефона — не документ сумісності.
adb shell getprop ro.build.version.sdk
adb shell dumpsys package com.example.vpn | head -40
Зіставте протокол із клієнтом, який його підтримує, і отримайте профіль перевіреним каналом постачальника, а не вставляйте його в сторонню форму. Адреса кінцевої точки каже, куди підключатися, а не який застосунок уміє говорити цим протоколом. Вважайте експортовані профілі та QR-коди обліковими даними, бо зображення QR може містити весь ключ. Якщо профіль видано для іншого клієнта, видайте його заново, а не перетворюйте.
Правила за застосунками та робочі профілі змінюють охоплення
Android підтримує конфігурації VPN для окремих застосунків, тож браузер може бути поза тунелем, поки поштовий застосунок усередині. Особистий і робочий профілі — окремі контексти зі своєю активною службою. Перевірка адреси з неправильного застосунку — один із найпоширеніших хибних висновків у цій галузі.
Погляньте на списки включення та виключення, а потім перевірте тим застосунком, який справді важливий. Тунель робочого профілю не охоплює особисті застосунки, а особистий тунель не охоплює робочі застосунки. Те саме розділення пояснює, чому корпоративний ресурс працює в одному профілі й не працює в іншому без видимої різниці в конфігурації. Запишіть контекст профілю в заявці, бо він змінює навіть те, які налаштування застосовуються.
Зупиніться, якщо перевірюваний застосунок не входить до охоплення тунелю. Це вибір політики, а не несправність.
Перевірте, що насправді покинуло телефон
Перевірте публічні та приватні призначення, обидві родини адрес і обидві мережі доступу. Потім порівняйте результат із власним охопленням застосунку, бо успішне завантаження сторінки в одному застосунку нічого не каже про інший. Повторіть після перемикання з Wi-Fi на мобільні дані, оскільки повторне підключення може потрапити на інший шлях.
adb shell ip rule
adb shell dumpsys netpolicy | grep -i vpn
Always-on VPN і параметр, що блокує підключення без VPN, пов'язані, але різні, і суворе блокування може зламати вхід на captive-портал, доки ви не виконаєте документовану процедуру. Налаштування Private DNS теж можуть взаємодіяти з розпізнавачем профілю, тому сліпа заміна DNS організації створює нову несправність. Якщо тунель помирає під час блокування екрана, прочитайте посібник для розробників VPN про фонове виконання та оптимізацію акумулятора, перш ніж щось переінстальовувати.
Симптом, який варто тримати в голові, — це розрив між значком і шляхом. Ключ означає, що служба володіє інтерфейсом; лише перевірка з потрібного застосунку в потрібній мережі каже, куди пішов трафік. Перевіряйте обидва, і наступний звіт про зламаний VPN буде значно легше локалізувати.