🪄 Изучаю немного магии с TURN Relay
Последние дни ковыряю два интересных проекта, которые используют TURN-релеи инфраструктуры VK
✅ proxy-turn-vk-android
✅ vk-turn-proxy-ios
Идея там очень интересная 〰️ TURN-серверы, которые обычно нужны для звонков и WebRTC, можно использовать как промежуточный релей для передачи трафика.
Грубо говоря
Клиент ➡️ TURN Relay ➡️ VPS-сервер ➡️ Интернет
Почему я вообще туда полез❓
Хочу попробовать встроить подобный механизм в свой OCOS + OpenConnect/ocserv.
В теории это может дать довольно любопытный сценарий 〰️ если в сети действует режим белых списков, но при этом доступна инфраструктура, необходимая для работы звонков, трафик потенциально можно передавать через разрешённый TURN relay.
То есть снаружи это уже не выглядит как обычное прямое подключение
OCOS ➡️ TURN/STUN/DTLS ➡️ Релей инфраструктура звонков ➡️ VPS-сервер ➡️ OpenConnect
Сейчас как раз изучаю
🔵 как проекты получают временные TURN credentials
🔵 как работает Allocate ➡️ Permission ➡️ ChannelBind
🔵 как гоняется трафик через ChannelData
🔵 как устроен DTLS transport
🔵 можно ли нормально подружить это с OpenConnect
🔵 что делать с собственным DTLS внутри OpenConnect
🔵 можно ли добавить несколько релей-провайдеров и резерв между ними.
Отдельно интересно посмотреть не только на VK, но и на другие инфраструктуры. Хотя там ещё большой вопрос, есть ли вообще воспроизводимый способ использовать релей без магии, костылей и фантазий.
Если эксперимент взлетит, хочется получить в OCOS примерно такие режимы
✅ Direct 〰️ обычное подключение
✅ TURN Relay 〰️ через релей
✅ Auto 〰️ direct ➡️ резерв через релей
Короче, пока изучаю матчасть и пытаюсь понять, насколько глубока эта кроличья нора. 🐇
Если получится подружить OpenConnect с TURN relay звонков, будет очень интересно. 😈
#turn #stun #dtls #webrtc #networking #openconnect #ocos #devops
Последние дни ковыряю два интересных проекта, которые используют TURN-релеи инфраструктуры VK
✅ proxy-turn-vk-android
✅ vk-turn-proxy-ios
Идея там очень интересная 〰️ TURN-серверы, которые обычно нужны для звонков и WebRTC, можно использовать как промежуточный релей для передачи трафика.
Грубо говоря
Клиент ➡️ TURN Relay ➡️ VPS-сервер ➡️ Интернет
Почему я вообще туда полез❓
Хочу попробовать встроить подобный механизм в свой OCOS + OpenConnect/ocserv.
В теории это может дать довольно любопытный сценарий 〰️ если в сети действует режим белых списков, но при этом доступна инфраструктура, необходимая для работы звонков, трафик потенциально можно передавать через разрешённый TURN relay.
То есть снаружи это уже не выглядит как обычное прямое подключение
OCOS ➡️ TURN/STUN/DTLS ➡️ Релей инфраструктура звонков ➡️ VPS-сервер ➡️ OpenConnect
Сейчас как раз изучаю
🔵 как проекты получают временные TURN credentials
🔵 как работает Allocate ➡️ Permission ➡️ ChannelBind
🔵 как гоняется трафик через ChannelData
🔵 как устроен DTLS transport
🔵 можно ли нормально подружить это с OpenConnect
🔵 что делать с собственным DTLS внутри OpenConnect
🔵 можно ли добавить несколько релей-провайдеров и резерв между ними.
Отдельно интересно посмотреть не только на VK, но и на другие инфраструктуры. Хотя там ещё большой вопрос, есть ли вообще воспроизводимый способ использовать релей без магии, костылей и фантазий.
Если эксперимент взлетит, хочется получить в OCOS примерно такие режимы
✅ Direct 〰️ обычное подключение
✅ TURN Relay 〰️ через релей
✅ Auto 〰️ direct ➡️ резерв через релей
Короче, пока изучаю матчасть и пытаюсь понять, насколько глубока эта кроличья нора. 🐇
Если получится подружить OpenConnect с TURN relay звонков, будет очень интересно. 😈
#turn #stun #dtls #webrtc #networking #openconnect #ocos #devops