TURN
Traversal Using Relay around NAT (TURN) — это протокол, который позволяет узлу за NAT или брандмауэром получать входящие данные через TCP- или UDP- соединения. Такая возможность особенно актуальна для узлов позади симметричных NAT, или брандмауэров, которые собираются стать принимающей стороной в соединении с одним конкретным узлом (peer-ом).
TURN не предназначен для проброса портов сервера через NAT, он поддерживает соединения точка-точка между узлами расположенными за NAT (как в IP-телефонии).
В этом плане он сохраняет функции безопасности, обеспеченные симметричным NAT и брандмауэрами, но меняет таблицы трансляции так, чтобы узел на внутренней стороне мог стать принимающей стороной соединения.
Протокол TURN описан в RFC 5766, обновление TURN для поддержки IPv6 описано в RFC 6156. Схема URI для TURN документирована в RFC 7065.
TURN тесно связан с аналогичным, но более простым протоколом STUN и является частью Interactive Connectivity Establishment (ICE) - набора технологий, разработанных IETF для обеспечения связи компьютерных устройств в режиме точка-точка.
Как работает TURN[править | править код]
TURN целесообразно использовать в тех случаях, когда использование STUN невозможно[1], так как этот протокол выдвигает большие требования к пропускной способности сервера.
Также как и в случае протокола STUN, TURN-агент со стороны клиента, обращается к TURN-серверу с просьбой предоставить публичный IP и порт для работы соединения. TURN-сервер возвращает свои IP и порт. Вторая сторона P2P соединения действует также. После установления соединения TURN-сервер работает в качестве прокси-сервера.
Ссылки[править | править код]
- Всё, что вы хотели знать о протоколе SIP - содержит общее описание работы TURN
- P2P в браузере - описание применения TURN в инфраструктуре WebRTC.
- Денис Здесенко. Обзор протоколов STUN, TURN и ICE, их принципы работы с NAT и использование для VoIP. 09.01.2020.
Примечания[править | править код]
- ↑ В силу технического отсутствия сервера STUN, или в силу того, что оба узла сети, пытающиеся коммуницировать, находятся за NAT и имеют только локальные IP-адреса.