作者:Fernando Vasquez(原文链接)
翻译:刘通
原标题:Quick Guide for STUN/TURN and WebRTC
为什么要用STUN/TURN ?
为了能让WebRTC在不同的网络之间穿行,我们就需要穿过防火墙,而且我们还要面对ISP所设置的种种限制。所以为了绕开这些限制,以及在接收端的防火墙上打开一个口让媒体通过,我们就需要依赖STUN/TURN服务器,目的是找到一条正确的路径(STUN),或者是作为一个中继服务器用来传输媒体(TURN)。在这个简单的指南中我们来一起设置一个基本的STUN/TURN服务器。
我们一会要使用到STUN/TURN服务器的一个开源实现,Coturn。
安装Coturn
我们假设你使用的Ubuntu 14.04 LTS服务器,运行一下指令:
(点击此处查看源码)
当安装完成之后,在terminal中运行以下指令:
(点击此处查看源码)
测试你的STUN/TURN服务器
为了测试你的TURN服务器,你可以使用WebRTC团队提供的这个工具:https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/
像这样输入你的服务器信息:
如果成功了,TURN测试输出信息应该像下图这样:
你可以看到倒数第二和第三行显示“relay”,这代表TURN服务器是工作正常的,如果在输出中没有“relay”的行,那么TURN服务器就没有像预想的那样正常运行了。
记住这点,这不是一个适用于产品环境的配置,这个测试只是为了让你在不购买TURN服务器的情况下就可以简单的测试一下你的WebRTC应用。