Files
free-turn-proxy/docs/flags.md
T
samosvalishe 12c1ad6283 feat: абстракция провайдера (vk + static)
Вытаскивает источник TURN-creds из захардкоженной привязки к VK в интерфейс
internal/provider.Provider. Pipeline (proxy/udprelay, proxy/tcpfwd) работает
только через интерфейс — без VK-specific импортов и sentinel'ов.

Реализации:
- internal/provider/vk: фасад над client/vkauth (требует -link)
- internal/provider/static: фиксированные creds для self-hosted coturn /
  metered / любого RFC 5766/8656 TURN (флаги -static-user/-static-pass/
  -static-addr)

Изменения интерфейса:
- common.GetCredsFunc дропнула link (provider держит сам)
- udprelay AuthHandler: LockoutUntilUnix → BackoffUntilUnix
- vkauth sentinels обёрнуты в provider.ErrBackoffActive / ErrFatalNoStreams
  через errors.Join (backward-compat сохранён)

Документация: docs/providers.md (новый), docs/glossary.md и docs/flags.md
обновлены.
2026-05-23 14:11:05 +03:00

2.7 KiB

Флаги

Клиент

Флаг По умолчанию Описание
-listen 127.0.0.1:9000 локальный адрес ip:port, куда подключается WireGuard или Xray клиент
-peer обязательный адрес сервера на VPS, host:port
-provider vk источник TURN-creds: vk | static (см. docs/providers.md)
-link обязательный для -provider vk ссылка VK Calls https://vk.com/call/join/...
-static-user обязательный для -provider static TURN username
-static-pass обязательный для -provider static TURN password
-static-addr обязательный для -provider static TURN server host:port
-n 10 параллельных TURN-потоков
-transport tcp транспорт до TURN-реле: tcp (TCP/TLS) | udp
-mode udp режим туннеля: udp (UDP-релей для WireGuard) | tcp (TCP-форвардер для Xray/sing-box)
-bond false распределять одно TCP-соединение по всем активным smux-сессиям (только с -mode tcp)
-turn из creds переопределить IP TURN-сервера
-port из creds переопределить порт TURN-сервера
-obf false SRTP-мимикрия payload
-obf-key пусто общий ключ, 32 байта hex (64 символа)
-gen-obf-key false напечатать новый ключ и выйти
-manual-captcha false сразу ручной режим captcha (только -provider vk)
-streams-per-cred 10 потоков на один кеш VK-учёток (только -provider vk)
-dns-mode auto plain (UDP/53) | doh | auto
-dns-servers пусто свои UDP/53 резолверы, ip[:port][,ip[:port]...]
-debug false debug-логи

Сервер

Флаг По умолчанию Описание
-listen 0.0.0.0:56000 адрес прослушивания ip:port
-connect обязательный локальный backend host:port (WG 127.0.0.1:51820 / Xray 127.0.0.1:443)
-mode udp режим туннеля: udp | tcp (bond автоопределяется)
-obf false SRTP-мимикрия payload
-obf-key пусто общий ключ, 32 байта hex
-gen-obf-key false напечатать новый ключ и выйти
-debug false debug-логи