Как Telegram, Skype, etc. связывают 2 клиента за NAT p2p? Господа направьте. Как сабжи из вопроса, да и остальные звонилки, писалки, связывают двух клиентов напрямую? Не знаю есть ли в скайпе такое, но телега может в обход своих серверов связывать двух человек. Знаю про TURN, но есть ли более менее так скажем официальный способ, а не такие хаки обхода NAT'a?
Для связи двух клиентов за NAT используются различные техники и протоколы, такие как NAT traversal, STUN (Session Traversal Utilities for NAT), TURN (Traversal Using Relays around NAT) и ICE (Interactive Connectivity Establishment).
STUN позволяет определить тип NAT и получить внешний IP и порт, который нужно использовать для установления прямого соединения между клиентами. TURN используется в случае, если прямое соединение через STUN не удается установить, и сервер TURN выступает как посредник для передачи данных между клиентами.
ICE комбинирует протоколы STUN и TURN для определения наиболее эффективного способа установления соединения между клиентами.
Таким образом, Telegram, Skype и другие приложения используют эти технологии для обхода NAT и установления прямого соединения между клиентами без необходимости передачи данных через центральные серверы.
Для связи двух клиентов за NAT используются различные техники и протоколы, такие как NAT traversal, STUN (Session Traversal Utilities for NAT), TURN (Traversal Using Relays around NAT) и ICE (Interactive Connectivity Establishment).
STUN позволяет определить тип NAT и получить внешний IP и порт, который нужно использовать для установления прямого соединения между клиентами. TURN используется в случае, если прямое соединение через STUN не удается установить, и сервер TURN выступает как посредник для передачи данных между клиентами.
ICE комбинирует протоколы STUN и TURN для определения наиболее эффективного способа установления соединения между клиентами.
Таким образом, Telegram, Skype и другие приложения используют эти технологии для обхода NAT и установления прямого соединения между клиентами без необходимости передачи данных через центральные серверы.