Почему VPN работает только через Wi‑Fi, а на мобильном интернете либо не подключается, либо отваливается через минуту, объясняется устройством мобильной сети, а не поломкой приложения. Дома роутер выдаёт вам обычный адрес и пропускает всё подряд. У сотового оператора вы сидите за общим адресом вместе с тысячами абонентов, часть сетей работает только по IPv6, UDP‑трафик обрабатывается иначе, размер пакета меньше, а телефон в целях экономии батареи убивает фоновые соединения. Каждый из этих пунктов способен уронить туннель, и у каждого есть своё лечение.
Ниже причины по частоте и порядок проверки, который занимает десять минут и в большинстве случаев заканчивается рабочим туннелем на мобильном интернете.
Причина 1. Общий адрес и NAT оператора
Сотовый оператор прячет тысячи абонентов за одним внешним адресом. Это называется CGNAT, и для обычного сёрфинга он незаметен, но туннелям по UDP, в первую очередь WireGuard, он мешает: оператор быстро забывает о «тихом» соединении, и туннель рвётся, хотя приложение показывает «подключено». Симптом: на Wi‑Fi всё стабильно, на мобильном интернете обрыв через минуту‑две, особенно когда телефон лежит без дела.
Лечение: включить в приложении keepalive, чтобы туннель регулярно подавал признаки жизни, или перейти на протокол поверх TCP, например VLESS. Как ведёт себя WireGuard в таких сетях, в статье WireGuard: что это и как настроить.
Причина 2. UDP обрабатывается не так, как TCP
Часть операторов ограничивает UDP‑трафик по скорости или на отдельных портах, а некоторые сети в принципе пропускают UDP хуже. WireGuard и OpenVPN по UDP страдают первыми. Симптом: подключается, но скорость в разы ниже, чем без туннеля, или соединение «висит».
Лечение: переключить OpenVPN на TCP, если приложение это позволяет, или использовать VLESS, который работает поверх TCP и выглядит для сети как обычное HTTPS‑соединение. Подробнее о протоколе в статье VLESS: что это за протокол.
Причина 3. Сеть только по IPv6
Многие мобильные сети выдают устройству только IPv6, а IPv4 эмулируют через шлюз. Если сервер VPN доступен только по IPv4, а приложение не умеет ходить к нему через такой шлюз, подключение не устанавливается вовсе. Симптом: «не удаётся подключиться» сразу, без попыток, только на мобильном интернете.
Лечение: выбрать сервер с адресом IPv6, если сервис его даёт, или протокол, который работает по доменному имени, а не по адресу. После подключения проверьте, что ваш реальный IPv6 не утекает мимо туннеля: тест утечки IPv6.
Причина 4. Размер пакета
В мобильных сетях допустимый размер пакета меньше, чем в домашних. Если туннель собирает пакеты «домашнего» размера, они дробятся или теряются. Симптом: подключено, страницы начинают грузиться и не догружаются, картинки висят.
Лечение: уменьшить MTU в настройках приложения или профиля. Значения в районе 1280–1400 обычно решают проблему; начните с меньшего и поднимайте, пока работает. Почему это влияет на скорость, в статье Почему VPN медленный и как ускорить.
Причина 5. Телефон экономит батарею
Android и iOS усыпляют фоновые приложения, и VPN‑клиент в их числе. На Wi‑Fi это менее заметно, на мобильной сети система агрессивнее. Симптом: туннель работает, пока приложение на экране, и пропадает, когда телефон в кармане.
Лечение: убрать VPN‑приложение из ограничений энергосбережения, на Android включить «Постоянная VPN» в системных настройках, на iPhone проверить, что профиль один и «Подключение по требованию» настроено. Как это выглядит, в статье Почему VPN сам отключается.
Причина 6. Частный DNS и другие настройки
На Android пункт «Частный DNS» с чужим адресом уводит DNS‑запросы мимо туннеля и ломает часть сайтов; поставьте «Автоматически» или выключите на время использования VPN. На iPhone мешают старые профили VPN и DNS от других приложений: оставьте один.
Порядок проверки
- Подключитесь на мобильном интернете и посмотрите, какая ошибка: сразу «не удалось» (причина 3) или подключилось и потом упало (причины 1, 2, 5).
- Смените протокол: с WireGuard на VLESS или OpenVPN по TCP.
- Включите keepalive и уменьшите MTU.
- Проверьте «Частный DNS» и лишние профили.
- Уберите приложение из ограничений энергосбережения.
- После каждого шага проверяйте Какой у меня IP: страна должна быть серверной.
Если на Wi‑Fi всё работает, а на мобильном интернете ни один шаг не помог, попробуйте другой сервер: отдельные адреса у отдельных операторов ведут себя хуже, и это лечится сменой адреса, а не настройкой.
Кто в итоге виноват
Никто конкретно. Мобильная сеть устроена иначе, чем домашняя, и туннель нужно под неё настроить один раз. После этого он работает одинаково везде, а Kill Switch не даст трафику уйти в открытую в момент переключения между сетями.
Если наоборот: на мобильном работает, на Wi‑Fi нет
Обратная ситуация встречается реже и объясняется самой сетью Wi‑Fi. Гостевые и корпоративные сети нередко пропускают только веб‑трафик по стандартным портам и режут UDP целиком: WireGuard там не поднимется, а протокол поверх TCP на порту HTTPS пройдёт. Сети со страницей входа не дают туннелю подняться, пока вы не прошли портал: сначала вход, потом туннель. Домашний роутер с включённым «жёстким» межсетевым экраном или без поддержки прохождения VPN тоже может мешать; пункт называется VPN Passthrough и по умолчанию обычно включён. Порядок проверки тот же: смена протокола, затем сервера, затем настроек сети.
Коротко
На Wi‑Fi туннель работает, потому что домашняя сеть простая. На мобильном интернете ему мешают общий адрес оператора, особенности UDP, сети только по IPv6, размер пакета и экономия батареи. Лечение по порядку: протокол поверх TCP, keepalive, меньший MTU, «Частный DNS» в автоматический режим, приложение вне ограничений энергосбережения, и, если ничего не помогло, другой сервер. Настроив это один раз, о разнице между сетями можно забыть.
404 VPN даёт в одном приложении VLESS поверх TCP и WireGuard, так что переключение протокола занимает секунды, DNS идёт внутри туннеля, есть Kill Switch. Бесплатного тарифа хватает, чтобы пройти проверку выше на своём операторе. Начать можно на главной.