VexVPN

VexVPN: руководство для провайдеров

Какие ссылки серверов понимает приложение VexVPN (iOS). Документ для тех, кто выдаёт пользователям ссылки из своей панели (Remnawave, Marzban, 3x-ui и другие) или со своего сервера. Действует с версии 1.1.

Приложение — клиент: своих серверов у него нет. Пользователь вставляет ссылки серверов, сканирует QR-код или открывает ссылку vexvpn://import; эти ссылки никуда не отправляются, приложение подключается по ним напрямую.


1. Ссылки серверов

Обычный текст или base64 (стандартный или URL-safe, с = или без): по одной ссылке на строку, до 512 строк. Строки неподдерживаемых форматов (hysteria2, tuic, wireguard и другие) пропускаются. Если не разобралась ни одна строка, показывается ошибка первой строки. Название сервера — фрагмент #… (для vmess — ps).

Для ссылок приложение само строит конфигурацию: loopback SOCKS → outbound ссылки, домен сервера резолвит система. Своих DNS и routing у такой конфигурации нет.

Протокол Поддерживается
vless://uuid@host:port?…#имя encryption=none; flow=xtls-rprx-vision или xtls-rprx-vision-udp443
vmess://base64(JSON) формат v2rayN; только AEAD (aid=0); scy: auto, aes-128-gcm, chacha20-poly1305, none, zero
trojan://password@host:port?…#имя по умолчанию security=tls
ss://…#имя SIP002 и старый base64-формат; методы aes-128-gcm, aes-256-gcm, chacha20-(ietf-)poly1305, xchacha20-(ietf-)poly1305, 2022-blake3-aes-128-gcm, 2022-blake3-aes-256-gcm, 2022-blake3-chacha20-poly1305, none. Плагины (plugin=) не поддерживаются

Параметры транспорта (type=, для vmess — net):

type Параметры
tcp / raw (по умолчанию) headerType только none
ws path (по умолчанию /), host
grpc serviceName, mode=multi, authority
httpupgrade path, host
xhttp / splithttp path, host, mode (auto, packet-up, stream-up, stream-one), extra (JSON)

Параметры защиты (security=):

security Параметры
none (по умолчанию для vless) —
tls sni (или peer), alpn через запятую, fp. Без sni проверяется host или домен сервера
reality обязательны sni и pbk (43 символа, 32 байта); sid — hex, до 16 символов; spx; fp (по умолчанию chrome)

fp: chrome, firefox, safari, ios, android, edge, 360, qq, random, randomized. Другие значения и неизвестные type / security — отказ по этой строке с названием параметра. Другие неизвестные параметры игнорируются.

2. QR-код

В приложении: «Сканировать QR-код» — камерой или из фото. QR-код может содержать то же, что пользователь вставил бы сам: одну ссылку сервера, несколько ссылок по одной на строку или ссылку vexvpn://import (раздел 3). Если на фото несколько кодов, добавляется первый подходящий.

3. Кнопка «Добавить в VexVPN» на вашем сайте

vexvpn://import?link=<ссылка сервера vless/vmess/trojan/ss, URL-encoded>

Приложение спрашивает подтверждение и ничего не делает без него. Если ссылки уже добавлены, они заменяются, VPN отключается. Сами по себе такие ссылки VPN не включают.

4. Проверка

Вставьте ссылку в приложение: должен появиться сервер с пингом, затем подключение.