WebRTC 系列文章 ICE服务器搭建 coturn[通俗易懂]

WebRTC 系列文章 ICE服务器搭建 coturn[通俗易懂]WebRTC系列文章ICE服务器搭建服务器环境安装coturn安装coturn依赖软件克隆代码仓库安装coturn修改配置克隆一份配置文件修改配置项启动coturn检测coturn工作状态coturn是一个C++编写的开源ICE服务器,同时兼顾了STUN和TURN的功能。服务器环境CentOS7云服务器一台安装coturn安装coturn依赖软件yumi…

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

coturn是一个C++编写的开源ICE服务器,同时兼顾了STUN和TURN的功能。

服务器环境

CentOS7 云服务器一台

安装coturn

因为coturn使用到了UDP,所以要把coturn监听的UDP和TCP相关端口在安全组中打开,这个一般在云资源控制台的服务器安全组配置中。我们这次使用的是3478端口。

安装coturn依赖软件

yum install git libssl-dev libevent-dev libpq-dev make sqlite openssl-devel libsqlite3-devel libevent libevent-devel -y

克隆代码仓库

# 国内仓库(推荐使用)
git clone https://gitee.com/whatitis/coturn
# 原仓库(速度会慢一些)
git clone https://github.com/coturn/coturn

安装coturn

# 检查环境,并生成构建文件
# 配置指定安装到 /usr/local/coturn目录
./configure --prefix=/usr/local/coturn
# 编译项目,并安装
make && make install

安装完成会得到这样的一个目录
在这里插入图片描述

修改配置

克隆一份配置文件

etc目录下复制一份turnserver.conf.default改名为turnserver.conf
turnserver.conf.default 》 turnserver.conf

修改配置项

# 监听的网卡
12  listening-device=eth0
# 监听的端口
18  listening-port=3478
# 绑定的公网地址
120 external-ip=119.3.xxx.xxx
# 用户名和密码
241 user=codeboy:helloworld
# 名称
338 realm=codeboy

启动coturn

./turnserver -c ../etc/turnserver.conf

在这里插入图片描述

检测coturn工作状态

这个网址可以检测ICE服务器的工作状态
https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这种状态就表示我们的ICE服务器coturn工作正常。


推荐阅读

WebRTC 系列文章 WebRTC基本概念理解

WebSocket消息推送和聊天功能实现

WebRTC 系列文章 实现Web一对一视频通话和文字聊天(兼容手机和PC)

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

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

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


相关推荐

  • android:ListView排序[通俗易懂]

    android:ListView排序[通俗易懂]
    Android:ListView排序

    ListView通过适配器得到内容数据,可以对数据list先排序再提供给ListView:
    privateList>getData(){
    List>list=newArrayList>();
    //addData…
    //对list进行排序

    2022年9月27日
    4
  • poetry和poet_poetry和the poetry区别

    poetry和poet_poetry和the poetry区别Poetry的基本使用准备工作如果你是在一个已有的项目里使用Poetry,你只需要执行poetryinit命令来创建一个pyproject.toml文件:poetryinit可看到

    2022年7月31日
    10
  • Java.Utils:网络工具包[通俗易懂]

    Java.Utils:网络工具包[通俗易懂]packagecom.boob.common.utils;importorg.springframework.util.MultiValueMap;importorg.springframework.web.util.UriComponentsBuilder;importjavax.net.ssl.HttpsURLConnection;importjavax.servlet….

    2022年7月16日
    14
  • spring cloud 入门系列八:使用spring cloud sleuth整合zipkin进行服务链路追踪[通俗易懂]

    好久没有写博客了,主要是最近有些忙,今天忙里偷闲来一篇。我是华丽的分割线微服务架构是一种分布式架构,微服务系统按照业务划分服务单元,一个微服务往往会有很多个服务单元,一个请求往往会有很多个单元参与

    2022年2月16日
    44
  • HTML解析之DOMContentLoaded和onload

    HTML解析之DOMContentLoaded和onload说在前面在很久很久以前,我在封装自己的JQuery库时就使用过DOMContentLoaded,觉得这个知识点看看别的文章就行了,不过现在我想把它记下来。JS代码与body标签的位置关系一个HTML初学时会遇到的问题,一个html页面中js代码应该放到哪里?<!–如果script标签在body前面–><head>…&lt…

    2025年5月28日
    5
  • 进程调度时间片轮转例题_进程调度算法java

    进程调度时间片轮转例题_进程调度算法java一、实验目的(1)加深对进程的理解(2)理解进程控制块的结构(3)理解进程运行的并发性(4)掌握时间片轮转法进程调度算法二、实验原理(1)建立进程控制块(2)设计两个链队列,分别表示就绪队列和完成队列(3)用户输入进程标识符,进程到达时间,进程所需的时间,申请空间存放进程,PCB信息。(

    2025年7月10日
    6

发表回复

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

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