В Android есть четыре отдельные операции, которые люди называют сбросом VPN, и они стирают разное. Очистка кэша приложения удаляет временные файлы; очистка его хранилища удаляет сам профиль. Сброс сети заново выстраивает стек подключений, а сброс до заводских настроек заменяет раздел данных пользователя. Выбирайте операцию по подозреваемому состоянию, а не по привычке. Если ошибётесь, профиль или путь регистрации, который был нужен, исчезнет до того, как вы что-то диагностируете.

Вот правило, которое я применяю при каждом обращении: назовите состояние, назовите его владельца, затем удалите только копию этого владельца. Остальная часть страницы — о том, какой компонент Android хранит какие байты.

Где на самом деле живёт профиль VPN в Android

Сторонний клиент на неуправляемом телефоне держит профиль в собственном каталоге данных приложения — как файл настроек, блок JSON или небольшую базу SQLite. Именно этот каталог удаляет пункт Очистить хранилище в Настройках. Профиля нет в системном списке VPN: в этом списке хранится запись о подключении, которую клиент зарегистрировал через VpnService, включая имя подключения, пакет-владелец и любой флаг постоянного включения, заданный пользователем.

VpnService — это сантехника, а не хранилище. Клиент один раз запрашивает согласие, строит интерфейс tun и сам перемещает пакеты, поэтому платформе никогда не нужно понимать формат профиля. Именно поэтому файл конфигурации, скопированный с другого телефона, часто импортируется как пустой профиль или не проходит проверку.

Учётные данные идут другим путём. Ключ или сертификат, полученный через системный KeyChain, остаётся в хранилище под управлением системы, поэтому удаление данных приложения может оставить учётные данные пригодными, а удалить только псевдоним клиента к ним.

Управляемые устройства добавляют второго владельца. Рабочий профиль, созданный EMM, запускает собственную копию клиента по собственной политике, а постоянно включённый VPN может быть закреплён политикой устройства, так что пользователь не сможет его отключить. На таких устройствах профиль обычно предоставляется при регистрации, а не вводится вручную. Тогда восстановление — это решение о повторной регистрации, а не о повторном импорте.

Кэш, хранилище, сброс сети, сброс до заводских настроек

Четыре операции соответствуют этим границам. Прочитайте строку для подозреваемого состояния, прежде чем что-то нажимать.

OperationWhat it removesWhat survives
Clear cacheTemporary files, including any diagnostic bundle the client wrote thereProfile, credentials, enrollment
Clear storageThe app's preferences, databases and saved profileKeyChain entries, other apps, device policy
Network resetWi-Fi, mobile and Bluetooth registrations, and on most builds the saved VPN entriesApp data, KeyChain, work profile
Factory resetThe user data partition, accounts and device-bound keysNothing on the device

Очистка кэша — самое безопасное и наименее полезное. Она удаляет временные файлы, а именно там клиент мог оставить журнал, который сотрудник поддержки только что у вас попросил. Руководство Android по устранению неполадок приложений рассматривает кэш и хранилище как два разных удаления, и вам стоит делать так же.

Очистить хранилище — это настоящий сброс отдельного приложения. Он удаляет профиль, сохранённый шлюз и флаги доверия, которые клиент держал для определённых сетей. Он не отзывает записи KeyChain, не удаляет системную запись VPN, принадлежащую другому приложению, а в управляемом профиле не удаляет политику, которая изначально отправила профиль.

Сброс сети в Настройках действует на всё устройство, и его точный объём меняется в зависимости от производителя и версии Android. Диалог подтверждения в вашей сборке — единственное надёжное утверждение о том, что он забудет.

Сначала запишите обратный путь

Перед любым разрушительным шагом запишите пять вещей: версию клиента, имя профиля, адрес шлюза, владельца службы и точную стадию, на которой подключение не удаётся.

Именно эти пять фактов отделяют сбой клиента от сбоя политики или сервера. Тайм-аут, отказ в сертификате и немедленный отказ — три разных сбоя, и каждый указывает на другого владельца. Очистите сначала хранилище — и вы потеряете доказательства со стороны клиента, которые их различили бы. Сохраните очищенную копию журнала, пока он ещё существует.

Затем подтвердите, как подключение будет создано заново. Отображаемое имя и имя хоста недостаточны, когда профиль зависел от клиентского сертификата, управляемой конфигурации или регистрации MFA, привязанной к этому устройству.

Блокировка начальной настройки, которую никто не планирует

Один режим отказа заслуживает отдельного раздела. Если единственное место для скачивания профиля — внутренний портал, доступный только через туннель, который вы собираетесь удалить, очистка хранилища создаёт тупик без выхода внутри приложения.

Постоянно включённый VPN с параметром блокировать подключения без VPN превращает это в полный отказ: у телефона нет работающего пути к порталу, а у клиента нет профиля, чтобы поднять туннель. Два состояния удерживают друг друга на месте.

Выход процедурный, а не технический. Экспортируйте или сфотографируйте конфигурацию, пока туннель ещё работает, убедитесь, что у портала есть маршрут, не зависящий от VPN, и только потом что-то очищайте. На управляемом устройстве спросите администратора, какой путь восстановления существует, прежде чем трогать профиль.

Проверьте восстановленный туннель

Когда профиль вернётся, проверяйте по порядку: разрешение имён, TCP-соединение с известным внутренним хостом и поведение блокировки при сбое, на которое вы действительно полагаетесь. Порядок важен, потому что туннель может подняться и всё равно утекать DNS.

Значок ключа в строке состояния доказывает, что интерфейс существует, и ничего больше.

Если подключение всё ещё не удаётся после целевого сброса, прекратите наращивать масштаб операции. Сохраните доказательства до и после, отметьте, какой уровень вы очистили, и передайте дело владельцу компонента вместе с теми пятью фактами. Сброс до заводских настроек — отдельное решение с гораздо более высокой ценой, и это не следующий шаг в контрольном списке VPN.

Похожие статьи