Android IOS WebRTC 音视频开发总结(十一)-- stun&turn部署

本篇文章主要介绍webrtc里面的stun,turn服务的安装与配置(转载请说明出处: http://www.cnblogs.com/lingyunhu, RTC.Blacker)

说到STUN,TURN服务的作用,相信很多人都知道,主要处理打洞与转发,配合完成ICE协议.但很多人不知道该怎么搭建.

其实不会搭建关键是不熟悉linux或没接触过linux,如果熟悉linux再仔细阅读相关文档,应该不难完成这个过程.

 

linux有很多版本,本文主要介绍在ubuntu14上的搭建过程:

1.$ wget http://turnserver.open-sys.org/downloads/v<......>/turnserver-<......>.tar.gz 

2.tar xvfz turnserver-<...>.tar.gz

3.$ cd turnserver-<...>

4.$ sudo apt-get update

5.$ sudo apt-get install gdebi-core

6.$ sudo gdebi coturn*.deb

7.$ turnadmin -a -b -u username -r example.org -p password

8.$ turnserver.conf external-ip=*.*.*.*

9.$ turnserver -c -b -r u1.com -a -f -v -o   

10. http://*.*.*.*:3478 返回TURN Server

 

以上10个步骤就完成了stun,turn服务的安装与配置,接下来就是客户端脚本中的配置(*.*.*.*代表自己的IP):

1 iceServers: [
2                   {"url": "stun:*.*.*.*},
3        {"url":"turn:*.*.*.*","credential":"username","username":"password"} 4 ] 5

 

最后:

1,stun和turn服务不仅仅可以用在webrtc里面还可以用在其他地方,当然了webrtc要实现打洞与转发你也可以自己去实现.

2,有人会问在客户端JS里面就可以直接看到username和password,会不会不安全?答案是肯定的,怎么解决呢?如有兴趣请继续关注.

 

以上,如果错误和遗漏,请纠正与补充,不胜感激! RTC.Blacker.

 

 

原文地址:https://www.cnblogs.com/lingyunhu/p/4084669.html