Перейти к содержимому

Приложение для Android

Приложение rVPN для Android создаёт полнотуннельное VPN-соединение, используя встроенный VPN-сервис Android. Весь трафик устройства идёт через зашифрованный туннель без ручной настройки прокси.

  • Android 15.0 или новее (API 35+)
  • Развёрнутый сервер rVPN
  • Адрес вашего сервера, а также либо экспорт профиля .rvpn с другого устройства, либо набор prekey от администратора вашего сервера

Скачать из Google Play

Окно терминала
curl -LO https://assets.rvpn.org/1.2.6/rvpn-android.apk

Затем откройте APK на устройстве, чтобы установить его.

Приложение построено вокруг профилей — каждый профиль объединяет адрес сервера, ключ идентификации, набор prekey и правила раздельного туннелирования. Вы можете иметь до 10 профилей и переключаться между ними на главном экране.

Откройте приложение. На главном экране коснитесь карточки профиля («No active profile») или перейдите на вкладку SettingsManage Profiles.

У вас есть два варианта:

Если кто-то поделился с вами файлом .rvpn, коснитесь иконки импорта. Выберите файл. Профиль появится в списке со всеми ключами.

Коснитесь кнопки +. В редакторе профиля заполните:

  • Name — любое имя (например, «Home HK»)
  • Colour — цветной маркер, помогающий узнавать профиль
  • Server Addresswss://your-server.com/api/v1/ws/tun
  • Identity Key — коснитесь Generate Identity, чтобы создать новую идентичность X3DH для этого профиля
  • Prekey Bundle — коснитесь Import Prekey… и выберите JSON-файл, предоставленный вашим администратором сервера

Строки Identity Key и Prekey Bundle показывают зелёную галочку, когда они присутствуют. Коснитесь Save.

На главном экране коснитесь большой кнопки Connect. Android попросит разрешить rVPN устанавливать VPN-соединение при первом подключении — подтвердите. Приложение:

  1. Подключится к вашему серверу через TLS 1.3 WebSocket
  2. Установит шифрование с прямой секретностью (X3DH + Double Ratchet)
  3. Получит IP-адрес туннеля от сервера
  4. Направит весь трафик через VPN-интерфейс Android

После подключения главный экран показывает назначенный IP, время сессии и счётчики отправленных/полученных байт. Коснитесь кнопки снова, чтобы отключиться.

На главном экране коснитесь карточки активного профиля, чтобы открыть управление профилями. Коснитесь другого профиля, чтобы сделать его активным. Если туннель уже поднят, приложение отключится, переключится и переподключится с новым профилем.

Направляйте через VPN только международный трафик, а локальный — напрямую.

Откройте редактор активного профиля (Settings → Manage Profiles → коснитесь профиля). В разделе Traffic:

  • Split Tunnel — включите
  • Bypass Countries — выберите одну или несколько стран, чьи диапазоны CIDR будут обходить туннель (встроенный список содержит CN, US, GB, DE, FR, JP, KR, SG, HK, AU, CA, IN, BR, RU)
  • Bypass Domains — дополнительные домены обхода
  • Tunnel Domains — домены, принудительно направляемые через туннель, даже когда Split Tunnel включён

Сохраните. Следующее подключение будет использовать новые правила.

Маршрутизация через несколько серверов (серверы выхода)

Заголовок раздела «Маршрутизация через несколько серверов (серверы выхода)»

(Приложение v1.2.9 и новее.)

Профиль может отправлять трафик для конкретных доменов или диапазонов IP через другие серверы rVPN, а всё остальное — через собственный (основной) сервер профиля. Типичный сценарий: весь трафик по умолчанию идёт через Гонконг, а google.com — через выход в США, чтобы геозависимый контент отдавался как для США. Каждый выход должен быть доступным сервером rVPN — трафик по-прежнему шифруется end-to-end через каждый из них.

Серверы выхода выбираются из других существующих профилей — ручного ввода сервера нет. Откройте редактор активного профиля → Exit ServersAdd Exit Server и выберите профиль, чей сервер вы хотите использовать. Адрес сервера, закреплённый TOFU-отпечаток и набор prekey подставятся из этого профиля, а имя выхода образуется от имени профиля. У каждого выхода свой отпечаток идентификации сервера, независимый от отпечатка самого профиля.

У каждого выхода есть поля Route Domains и Route IPs:

  • «Голый» домен — суффиксное совпадение: google.com направляет google.com и все поддомены; *.google.com — только поддомены. Двухбуквенные TLD и короткие домены работают без проблем.
  • В поле IP принимаются диапазоны CIDR (например, 1.1.1.0/24).

Когда домен из маршрутов резолвится, туннель запоминает адреса из ответа в таблицу ip→выход (на время TTL ответа), так что последующие подключения к этим IP пойдут через тот же выход. Статические CIDR-правила срабатывают напрямую. Всё остальное идёт через основной сервер.

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

Правила загружаются при запуске туннеля — после изменения серверов выхода или маршрутов отключитесь и подключитесь заново.

Каждый выход резолвит DNS по HTTPS через собственный туннель, поэтому домены из маршрутов получают ответы, локальные для этого выхода (без сюрпризов с гео-DNS).

Экспорт/импорт профиля переносит всю конфигурацию мультисерверности. Наборы prekey для выходов встраиваются при экспорте с ключом идентификации; экспорты от старых версий приложения импортируются чисто — с пустым списком выходов.

У CLI-клиента с v1.3.3 есть отдельный мультисерверный пул на TOML (только SOCKS5) — см. Справочник конфигурации клиента. Общей конфигурации с этой функцией у него нет.

По умолчанию DNS разрешается через туннель. Чтобы использовать собственные upstream-резолверы, отредактируйте профиль → NetworkDNS Servers и введите список через запятую (например, 1.1.1.1, 8.8.8.8).

«Доверие при первом использовании» включено по умолчанию для каждого профиля. Приложение принимает и запоминает идентификацию сервера при первом успешном подключении. Отпечатки записываются в канонической форме ik:1:<base32> и хранятся в самом профиле.

Если сервер когда-либо предъявит другой ключ, приложение откроет диалог Server identity changed с закреплённым и полученным отпечатками рядом и тремя вариантами: Cancel, Delete Profile или Trust New Identity. Если оператор сменил ключ по подписанной церемонии ротации, приложение обновит отпечаток молча — без диалога.

Для более строгой проверки вставьте отпечаток (полученный от оператора в форме ik:1:) в поле профиля Server Fingerprint до первого подключения.

Полная модель — формат отпечатка, церемония ротации, модель угроз — на странице Закрепление идентификации сервера.

  • Убедитесь, что адрес сервера правильный и начинается с wss://
  • Убедитесь, что строка Identity Key показывает зелёную галочку
  • Убедитесь, что строка Prekey Bundle показывает зелёную галочку
  • Убедитесь, что другой VPN не активен на устройстве
  • Убедитесь, что ваш сервер доступен на порту 443

Пул IP-адресов на сервере исчерпан. Свяжитесь с администратором сервера, чтобы расширить диапазон DHCP в rvpn.toml.

  • Убедитесь, что Split Tunnel включён в редакторе профиля
  • Убедитесь, что код страны обхода правильный (например, CN, а не China)
  • Переключите режим полёта, чтобы обновить таблицу маршрутизации
  • Попробуйте другие DNS-серверы
  • Проверьте нагрузку на сервер
  • Убедитесь, что Split Tunnel не отправляет слишком много трафика напрямую

Больше советов по устранению неполадок см. в Руководстве по устранению неполадок.