鸟语天空
搭建STUN/TURN服务器
post by:追风剑情 2024-7-14 19:54

WebRTC开源社区提供了一个较为成熟的项目coturn来实现STUN/TURN服务。

在coturn项目主页里,可以下载最新源代码,并对源代码进行编译

$ tar xvfz turnserver-<...>.tar.gz
$ ./configure
$ make
$ make install  

在编译过程中,如果当前服务器缺少编译所必须的依赖库,编译可能会失败。可以使用系统自带的包管理器进行安装,包管理器会自动处理包依赖关系。

在ubuntu服务器上,使用apt-get安装coturn服务。

~# apt update
~# apt search coturn
Sorting... Done
coturn/bionic-updates,bionic-security,now 4.5.0.7-1ubuntu2.18.04.1 amd64
   TURN and STUN server for VoIP
~# apt install coturn  

使用coturn时,需要注意以下事项。

启动coturn服务

// 以后台方式运行
~# coturn -afo
// 添加用户
~# turnadmin -a -u liwei -r liweix.com -p password123
// 使用telnet命令查看turnserver的运行状态
~# telnet 127.0.0.1 5766
// 查看客户端连接信息
~# turnserver -v  

turnserver.conf文件

 external-ip=[外部IP地址]
realm=liweix.com
cert=/usr/local/ssl/liweix_com.pem
pkey=/usr/local/ssl/liweix_com.key
cli-password=qwerty  

至此,STUN/TURN服务器搭建完毕。

STUN协议规范定义了一些错误码,当ICE协商失败时,可以使用这些错误码诊断失败原因。

STUN 错误码
错误码 说明
300 将本次请求重定向到另外一个可替代的服务
400 错误请求
401 未授权
403 禁止访问
420 未知属性
437 服务器端已经收到请求,但是配额不匹配
438 NONCE失效
441 credentials错误
442 传输协议不支持
486 用户配额达到上限
500 服务器错误
508 服务器达到了性能瓶颈

评论:
发表评论:
昵称

邮件地址 (选填)

个人主页 (选填)

内容