2015-06-12 2 views
1
  • Когда сверстники за другой NAT, мы используем STUN, чтобы получить вещи, идущие
  • Когда прямые равный-равному терпит неудачу, мы переходим в стороне TURN сервера,
  • и когда все UDP порты заблокированы в системе , мы подключаемся к серверу TURN с транспортом TCP.
  • , но что, если все порты, кроме 80, заблокированы (равносильно корпоративному прокси), что тогда? будет ли выше работающий сервер TURN работать? или я должен получить шлюз webrtc и полагаться на RTMP как резерв? Любая другая альтернатива?

ранее, я допустил ошибку, предполагая, что TCP нужен только порт 80, но this discussion заставляет меня сомневаться в вещах.Связь WebRTC только с использованием HTTP-порта 80?

ответ

2

Это зависит от того, насколько заблокирована ваша сеть. Если есть прокси, проверяющий HTTP-заголовок, TURN (STUN) через TCP не работает. Но если потоки через порт 80 не проверяются прокси-сервером (например, только межсетевым экраном), TURN over TCP должен работать.

Если ваш TURN позволяет получить доступ к TLS на порту 443, зашифрованный уровень должен обойти прокси-сервер/брандмауэр. Фактически прокси-сервер будет думать, что потоки являются запросом HTTPS. Но если прокси-сервер способен «сломать» уровень SSL (MITM, например), он может отклонить ваши сообщения, потому что он не понимает запрос TURN как HTTP-протокол.

0

443 также должен быть доступен. 80 для сигнализации, 443 для TURN.