我正在阅读这个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'
}
]
}
我可以使用此凭据在浏览器之间(在不同的PC上)进行Web-RTC通信。
并且我也阅读了本教程Implementing our own STUN/TURN server for WebRTC Application。根据本教程,当我们使用转向服务器进行nat和防火墙时,使用stun服务器是不必要的。本教程为stun和turn服务器添加了此代码。
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”?怎么能知道这个凭证?
答案 0 :(得分:1)
示例中提供的凭据为示例,您无法在产品中使用它们。
大多数TURN服务器需要使用凭据,因为可能因为中继SRTP / SRTCP数据包而导致网络使用率过高。另一方面,STUN服务器通常不受保护,因为在将它们用于候选收集时,计算能力或网络利用率不高。
有开放式转弯服务器(NUMB,例如,你可以设置一个用户名和密码用于他们的服务器)那里你可以测试,但我建议你在某种云中创建自己的计算服务,如果您正在创建产品。
简而言之,您知道TURN服务器的凭据和IP地址,因为您注册了正在使用的服务,或者它是您的服务器。