WebRTC之ICE服务器coturn安装及部署

操作系统:Ubuntu-Server 20.04

GitHub:https://github.com/coturn/coturn

配置说明:https://github.com/coturn/coturn/wiki/CoturnConfig

STUN协议允许位于NAT(或多重NAT)后的客户端找出自己的公网地址,查出自己位于哪种类型的NAT之后以及NAT为某一个本地端口所绑定的Internet端端口。这些信息被用来在两个同时处于NAT路由器之后的主机之间创建UDP通信。

TURN的全称为Traversal Using Relay NAT,即通过Relay方式穿越NAT,TURN应用模型通过分配TURNServer的地址和端口作为客户端对外的接受地址和端口,即私网用户发出的报文都要经过TURNServer进行Relay转发,这种方式应用模型除了具有STUN方式的优点外,还解决了STUN应用无法穿透对称NAT(SymmetricNAT)以及类似的Firewall设备的缺陷,即无论企业网/驻地网出口为哪种类型的NAT/FW,都可以实现NAT的穿透。

coturn开源项目同时实现了stun和turn服务的功能,是webrtc应用的必备首选。

一、安装

sudo apt-get install coturn

二、配置

修改/etc/turnserver.conf文件

#监听的网卡,第12行
listening-device=eth0

#监听的端口,第18行
listening-port=3478

#绑定的公网地址,第120行
external-ip=114.55.98.33

#UDP端口号最小值,第149行
min-port=49152

#UDP端口号最大值,第150行
max-port=65535

#账号和密码,第245行
user=admin:***

#服务器域名,第339行
realm=www.xiongbinbin.club

#SSL证书,第439行
cert=/etc/nginx/cert/www.xiongbinbin.club.pem

#SSL密钥,第446行
pkey=/etc/nginx/cert/www.xiongbinbin.club.key

#cli密码,第666行
cli-password=***

三、测试

ICE测试网址:https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/

首先,输入STUN or TURN URL、username、password,点击Add server添加一个turn服务器。

然后,点击Gather candidates进行测试。

如果返回有srflx即说明stun服务器已经能正常工作了。

如果返回有relay即说明turn服务器已经能正常工作了。

WebRTC之ICE服务器coturn安装及部署

 

WebRTC之ICE服务器coturn安装及部署

 

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注