Skip to main content
VK TURN Proxy (Good TURN) routes WireGuard UDP packets through the TURN relay infrastructure used by VK Calls and Yandex Telemost video conferencing. Traffic is encrypted with DTLS 1.2 before being sent as STUN ChannelData messages — making it appear as ordinary WebRTC media traffic to network observers.
This project is for educational purposes only.

How it works

Understand the DTLS + TURN tunneling architecture before you deploy.

Prerequisites

Everything you need before running client or server.

Server setup

Deploy the server component on your VPS next to WireGuard.

Client setup

Configure the client on Linux, Windows, macOS, or Android.

Quick start

1

Get a VK call link

Create a VK call at vk.com or find one via "https://vk.com/call/join/". Keep it alive by not pressing “end call for everyone”.
2

Run the server on your VPS

./server -listen 0.0.0.0:56000 -connect 127.0.0.1:<wg-port>
Replace <wg-port> with your WireGuard UDP port (e.g. 51820).
3

Configure WireGuard on the client

In your WireGuard client config, set the server endpoint to 127.0.0.1:9000 and MTU to 1280.
4

Run the client

./client-linux -peer <vps-ip>:56000 -vk-link https://vk.com/call/join/<id> -listen 127.0.0.1:9000 | sudo ./routes.sh
Wait for the connection to establish, then enable your WireGuard VPN.

Key features

DTLS 1.2 encryption

All WireGuard packets are wrapped in DTLS 1.2 before being relayed, obfuscating traffic as WebRTC media.

Parallel streams

Up to 16 parallel TURN connections for VK (default) increase throughput and reliability.

TCP and UDP transport

Connect to the TURN server over TCP (default) or UDP with the -udp flag.

Cross-platform

Native binaries for Linux, Windows, macOS, and Android (via Termux or the Android app).

Automatic credentials

Credentials are derived automatically from a VK or Yandex Telemost call link — no manual registration.

v2ray / xray support

Use any V2Ray-compatible core (xray, sing-box) in place of WireGuard for flexible routing.

Explore the docs

Client flags

All command-line flags for the client binary.

Server flags

Server binary flags and their defaults.

WireGuard configuration

Recommended WireGuard client and server config for use with the proxy.

Troubleshooting

Common problems and how to fix them.

Build docs developers (and LLMs) love