Files
free-turn-proxy/docs/uri.md
T
samosvalishe 5851ad6959 docs: профиль rtpopus2 в таблицах флагов и режимов
modes/flags/deploy/uri - добавлен rtpopus2 (none | rtpopus | rtpopus2).
2026-06-17 10:03:41 +03:00

3.3 KiB
Raw Permalink Blame History

Формат URI Share-ссылок

freeturn:// - компактный способ передать клиенту все параметры подключения. Ссылка генерируется на экране «поделиться» (или владельцем сервера) и переопределяет одноимённые флаги клиента, чтобы не вводить IP, режим, ключ и т.д. вручную.

Note

Ссылка на звонок VK (-link) не входит в URI - она уникальна для каждого клиента.

Формат

freeturn://<base64url(json)>

Payload - JSON-объект, закодированный base64url (без padding, как Go base64.RawURLEncoding). Версионирован полем v: парсер старой версии отвергнет незнакомую, новые поля не ломают разбор. Пустые и дефолтные поля опускаются.

Поля JSON

Ключ Флаг Описание
v - версия формата (сейчас 1).
provider -provider источник TURN-creds (например vk).
peer -peer адрес сервера на VPS (ip:port).
transport -transport транспорт до TURN-реле: tcp | udp.
mode -mode режим туннеля: udp | tcp.
bond -bond bonding TCP (true), только с mode=tcp.
obf -obf-profile профиль обфускации (rtpopus | rtpopus2); none опускается.
key -obf-key ключ обфускации (hex), только при заданном obf.
n -n число TURN-потоков.
spc -streams-per-cred потоков на один кеш VK-учёток.
cid -client-id Client ID гостя; owner добавляет его в allowlist (clients.json).
listen -listen локальный ip:port для WireGuard/Xray.
dns -dns-mode резолвер клиента: plain | doh | auto.
dnss -dns-servers свои DNS через запятую.
mcap -manual-captcha ручная VK captcha (true).
name - имя клиента / комментарий.

Note

Про cid: на каждую ссылку генерируется свежий Client ID, который owner добавляет в clients.json (комментарий = name). Без cid в allowlist клиент не авторизуется. В ссылку входят все параметры подключения - не входит только -link (звонок VK, уникален для каждого клиента).

Пример (декодированный payload)

{"v":1,"provider":"vk","peer":"1.2.3.4:56000","transport":"tcp","mode":"udp",
 "obf":"rtpopus","key":"d823fa...","n":10,"cid":"a1b2c3...","name":"RU-Server"}

Пример использования

./client "freeturn://eyJ2IjoxLCJwcm92aWRlciI6InZrIiwicGVlciI6..." -link "https://vk.ru/call/join/..."

Параметры из URI переопределяют базовые флаги (-peer, -mode, -obf-key, -n ...).