【问题标题】:TURN And STUN Server CredentialsTURN 和 STUN 服务器凭证
【发布时间】:2014-08-22 11:45:37
【问题描述】:

我正在关注这个http://www.html5rocks.com/en/tutorials/webrtc/infrastructure 教程。本教程或讨论是关于 TURN/STUN 服务器的。而本教程添加了如下所示的转向和眩晕服务器代码。

{
  'iceServers': [
    {
      'url': 'stun:stun.l.google.com:19302'
    },
    {
      'url': 'turn:192.158.29.39:3478?transport=udp',
      'credential': 'JZEOEt2V3Qb0y27GRntt2u2PAYA=',
      'username': '28224511:1379330808'
    },
    {
      'url': 'turn:192.158.29.39:3478?transport=tcp',
      'credential': 'JZEOEt2V3Qb0y27GRntt2u2PAYA=',
      'username': '28224511:1379330808'
    }
  ]
}

我可以使用此凭据在浏览器之间(在不同的电脑上)进行 Web-RTC 通信吗?

我还阅读了本教程Implementing our own STUN/TURN server for WebRTC Application。根据本教程,当我们为 nat 和防火墙使用 turn server 时,不需要使用 stun server。而本教程为眩晕和转动服务器添加了这段代码。

var pc_config = {"iceServers": [{"url":"turn:my_username@<turn_server_ip_address>", "credential":"my_password"}]};

pc_new = new webkitRTCPeerConnection(pc_config);

什么是“turn_server_ip_address”或什么是“my_password”?我怎么知道这个凭证?

【问题讨论】:

    标签: html5-video webrtc stun peer rfc5766turnserver


    【解决方案1】:

    示例中提供的凭据是EXAMPLES,您不能在产品中使用它们。

    大多数 TURN 服务器需要凭据才能使用,因为中继 SRTP/SRTCP 数据包可能会导致高网络使用率。另一方面,STUN 服务器通常不受保护,因为在将它们用于候选人收集时没有太多的计算能力或网络利用率。

    有开放式服务器(例如NUMB,您可以设置用户名和密码以用于他们的服务器),您可以对其进行测试,但我建议您在某种云计算服务中创建自己的如果您正在创建产品。

    简而言之,您知道 TURN 服务器的凭据和 IP 地址,因为您注册了正在使用的服务,或者它就是您的服务器。

    【讨论】:

    • Benjamin,我正在使用一个应用程序。当我在 3 台计算机上运行服务器和两个客户端时,远程视频是黑色的。但是当我在两台计算机上运行此应用程序时,会显示远程视频。该应用程序有眩晕服务器,但它没有转向服务器。所以我尝试添加转服务器。我在“stackoverflow.com/questions/25402937/…”教程链接中分享了这个错误。可能是什么错误?
    • 这与 STUN/TURN 无关,而是与您如何处理对等连接有关。如果这些是您使用的实际值,则它们什么也不做,也不会收集任何候选人,因为它们不是有效的服务器或凭据。但是,如果您在同一个 NAT 之后,它们是否有效并不重要,因为它们不是必需的。
    • 我在同一个网络上使用电脑?我在同一个 NAT 后面吗?
    • 那么你的黑屏与STUN或TURN设置无关。
    猜你喜欢
    • 1970-01-01
    • 2017-11-01
    • 2015-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-10
    相关资源
    最近更新 更多