1. WebRTC的P2P穿透
WebRTC的P2P穿透部分是由libjingle实现的.
步骤顺序大概是这样的:
- 尝试直连.
- 通过STUN服务器进行穿透
- 无法穿透则通过TURN服务器中转
STUN服务器比较简单. 网上也有很多公开的STUN服务器可以用于测试,例如: stun.ideasip.com
在WebRTC的P2P应用中,使用公开的STUN服务器时,有时响应比较慢,这就需要自己搭一个ICE服务器即可。ICE服务器包含STUN和TURN两部分,实际上只需要TURN服务器就可以解决P2P的穿透问题。
Coturn是在原来的TurnServer上增加了一些高级特性. (这是作者的描述, 两个项目是同一个作者. 作者更推荐使用Coturn).
- coturn 支持tcp, udp, tls, dtls 连接.
- coturn 支持linux bsd solaris mac os. 暂不支持windows (未来会支持)
2. 安装Coturn
2.1 安装依赖组件
使用下面相关命令安装Coturn依赖的相关库文件
sudo apt-get install libssl-dev
sudo apt-get install libevent-dev
sudo apt-get install libpq-dev
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev
sudo apt-get install