Сучасна диджитал-освіта для дітей — безоплатне заняття в GoITeens ×
Mazda CX 30
×

p2p на Python с использованием STUN

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

Всем доброго времени суток!
Неделю читаю теорию и смотрю объяснения на YT.
Нашле даже какой-то пример. Но он оказался криво написанный и не рабочий)))
Может кто пробовал? Подскажите как все таки «пробивают» NAT.
Я понимаю, что нужен сигнальный сервер плюс отдельная вязка клиент-сервер для передачи и приема сообщений.
Но как это на практике происходит?
У меня не получилось :(
За ранее всем спасибо.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Посмотрите еще это samy.pl/pwnat оно не на питоне но от языка зависит только работа с udp (или в данном случае raw) сокетом.

Попробуй посмотреть на codeby.net/...​him-python-chast-1.61168 там очень много статей на тему Python. От самых азов и далее. Может найдёшь ответ. а если нет, то можно там спросить у специалистов.

Подивіться в сторону PubNub www.pubnub.com. Через нього можна обмінюватися SDP, TURN/STUN, ICE

Возьмите pjsua клиент (pjsip.org) и поиграйтесь с SIP звонками — увидите как это работает на практике. Вам нужен клиент (pjsua) работающий с ICE в сочетании с TURN/STUN сервером (есть публичные, гугл покажет).

До часу ночи сидел и читал про pjsua)))
Интересное решение. Пока не все понял. Я так понимаю, что можно будет делать голосовые звонки из компьютера на компьютер. А видео звонки, видео конференции или простой текстовый чат делать можно?

pjsua умеет видеозвонки; про видеоконференции я не в курсе. Текстовый чат на нем реализуется через SIP протокол (т.е. через центральный сервер). Вообще можно посмотреть на его pjnath компонент — это как раз та штука которая реализует ICE и использовать у себя.

Как еще один вариант — посмотреть webrtc. Там тоже есть прохождение NAT-a, может быть его API подойдет больше для Ваших задач... Поищите в гугле по WebRTC Data Channels.

Спасибо)
Я вот еще наткнулся на matrix.org
Пока собираю информация

Можно его не пробивать, можно просто включить себе редирект нужного порта через протокол UPnP

Спасибо) Посмотрю.
Но не уверен, что это то. По термином «пробитие» я имел ввиду возможность обмениваться данными двум приложениям без наличия белого IP.

Підписатись на коментарі