1

我正在关注这个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 通信吗?

并且我还阅读了本教程为 WebRTC 应用程序实现我们自己的 STUN/TURN 服务器。根据本教程,当我们为 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”?我怎么知道这个凭证?

4

1 回答 1

3

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

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

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

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

于 2014-08-22T12:53:27.997 回答