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

WebRTC之ICE服务器coturn安装及部署GitHub:https://github.com/coturn/coturn一、安装sudoapt-getinstallcoturn

大家好,又见面了,我是你们的朋友全栈君。

操作系统: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安装及部署

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132558.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • js定时器setinterval_nodejs定时器

    js定时器setinterval_nodejs定时器最近帮公司的APP前端做RN,要求是用typescript,然后就掉进坑里了,别的不说,先说说setInterval()这个定时器函数,因为typescript是强类型语言,定义setInterval()必须定义其返回值,但是你无论用百度或者谷歌搜中文也好英文也罢,都告诉你setInterval()的返回值类型是number,但是真的是这样么?让我们看看如果你将setInterval()定…

    2022年9月27日
    0
  • iis配置完成,出现HTTP 错误 403.14 – Forbidden

    iis配置完成,出现HTTP 错误 403.14 – Forbidden

    2021年9月23日
    39
  • python挖矿脚本代码_一个挖矿脚本

    python挖矿脚本代码_一个挖矿脚本遇到一台机器偶尔cpu使用率达到80%,触发告警。登录查看后一个sshd2程序导致cpu负载高仔细查看就知道和sshd是两个完全不同的进程,取名sshd2应该只是为了迷惑用户ps-ef查看到父进程是一个/tmp/javax/config.sh,这个文件在当前系统已经删除了,所以只能按照pid号通过lsof-pPID查看打开的文件句柄在/proc/PID/fd里面顺利找到执行脚本#!/bin…

    2022年7月13日
    23
  • java如果智慧小区物业系统,基于ssm\springboot智慧小区物业管理平台实现

    java如果智慧小区物业系统,基于ssm\springboot智慧小区物业管理平台实现手把手实现智慧小区物业平台

    2022年10月17日
    0
  • Java面试宝典:42个面试题总结!

    Java面试宝典:42个面试题总结!本文我们将要讨论Java面试中的各种不同类型的面试题,它们可以让雇主测试应聘者的Java和通用的面向对象编程的能力。下面的章节分为上下两篇,第一篇将要讨论面向对象编程和它的特点,关于Java和它的功能的常见问题,Java的集合类,垃圾收集器,第二篇主要讨论异常处理,Java小应用程序,Swing,JDBC,远程方法调用(RMI),Servlet和JSP。开始!目录面向对象编

    2022年7月7日
    17
  • apt一键下载所有依赖的包_apt自动安装依赖包

    apt一键下载所有依赖的包_apt自动安装依赖包这几天从书本上见识到了aptitude包管理工具的魅力,果断想在自己的UbuntuKylin16.10上玩一玩。没想到遇到了很多的问题~~~apt源更新,编辑apt源配置文件 /etc/apt/sources.list发现vi使用起来好费劲,只能用delete删除 而上下键和backspace键都没法正常使用。还有看启动栏在左侧Left 有点不习惯,也做了设置:按下Ctrl+Al…

    2022年10月29日
    0

发表回复

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

关注全栈程序员社区公众号