Приложение webrtc показывает, что сервер Turn выключен, но работает - PullRequest
0 голосов
/ 09 мая 2019

Мой сервер оглушения / поворота работает на локальном компьютере (CoTurn).Он протестирован на "https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/" и работает. У меня есть доменное имя и настроен модем с публичным ip. Я настроил apache2, чтобы сделать сайт видимым для мира. У меня есть активные и действительные сертификаты letsencript. Все работает вКоротко. Но тестовое приложение запускает соединение (внешний компьютер связывается с локальным через socket.io), но затем видео не просматривается, и консоль возвращает ошибку: ошибка ICE, сервер TURN поврежден, см. информацию о:webrtc для более подробной информации.

Ссылка приложения, которое я использую в качестве теста, потому что с моим оригиналом у меня не было никаких сравнений. Первый раз с socket.io. Но socket.io отправляет и получает сообщения такпока что это не проблема.

https://github.com/anoek/webrtc-group-chat-example

PS:

Хорошо. Сервер отстает от сети. Мое приложение (но связанное приложение тоже) работает очень хорошов локальной сети (извините, я проверял этот пункт раньше). Это с моим сервером поворота / оглушения, а не с общедоступным сервером оглушения / поворота серверов Google.плохая настройка сервера apache2 или сервера поворота.Где я могу найти руководство по этому поводу?

Ситуация с моим сервером: myServerIpLocal-xxx.xxx.xxx.xxx -> nat / router / modem WithPublicIpStatic-xx.xx.xx.xx.Я могу видеть свои сайты со всего мира, но сервер не работает вне локальной сети.Внутри локальной сети все в порядке.

Конфигурация моей очереди:

listening-port=3478
tls-listening-port=5349
alt-listening-port=3479
alt-tls-listening-port=5350
listening-ip=xxx.xxx.xxx.xxx /*mylocal ip*/
relay-ip=xxx.xxx.xxx.xxx /*mylocal ip*/
external-ip=xx.xx.xx.xx /*my public ip on nat/ruter/modem */

min-port=49152
max-port=65535
verbose
fingerprint

userdb=/var/lib/turn/turndb
realm=mysite.com
cert=/etc/ssl/certificate.pem
pkey=/etc/ssl/private.key
dh-file=/etc/turn/dhparam.pem
no-stdout-log
log-file=/myhome/.turn/turn.log

lt-cred-mech
user=myusername:mypasswd

# Turn OFF the CLI support.
# By default it is always ON.
# See also options cli-ip and cli-port.
#
no-cli

#Local system IP address to be used for CLI server endpoint. Default value
# is 127.0.0.1.
#
cli-ip=127.0.1.1

# CLI server port. Default is 5766.
#
cli-port=5766

# CLI access password. Default is empty (no password).
#
cli-password=logen

no-sslv3
no-tlsv1

1 Ответ

1 голос
/ 17 мая 2019

мой старый код в файле turn.conf:

lt-cred-mech user=myusername:mypasswd

, но включите работу только локально .... вероятно, потому что я использую: sudo turnserver -L myPublicIp -o -a myrealm при каждой команде запуска Coturn ....

на самом деле я пытаюсь не использовать команду "turnserver", и я пытаюсь использовать onlu sudo coturn start .....

в основном в моем файле turn.conf я изменяю их:

lt-cred-mech user=mypasswd:myusername /***** mind the gap ;) *****/

это потому, что моя отладка файла index.js никогда не видит мое внешнее соединение как авторизованного пользователя ..... волшебным образом в это время мое приложение выполняет множественное соединение webrtc со всеми ПК и мобильными устройствами.... внутри и за пределами моей локальной сети .... (я пытаюсь подключить мое приложение с телефона в Барселоне, Испания, к другому в Лондоне с хорошим результатом).

Может быть, нужно обновить викирь Coturn?

В заключение я хотел бы поблагодарить сервера и супер-пользователей, которые отклонили мой вопрос.Поскольку я должен был договориться, я смог получить новую и интересную информацию по этому вопросу.

regards

...