概要
在 WebRTC 网络传输模块中,当遇到 NAT 之间无法打通的情况下,会使用 TURN 协议通过中转的方式实现端与端之间的通信。Coturn 就是一种开源的 STUN/TURN 服务器,它可以让你轻松地搭建一个能够在 NAT 防火墙和代理服务器背后运行的实时通信系统。Coturn 支持各种协议和技术,包括 STUN(Session Traversal Utilities for NAT)、TURN(Traversal Using Relays around NAT)和 ICE(Interactive Connectivity Establishment)。Coturn 可以用于向 WebRTC 应用程序提供 TURN 服务器,这些应用程序需要在 P2P 通信中转储流量。本文主要介绍 Coturn 在 Linux、Windows 系统下部署的步骤。
Linux 系统下部署(以 CentOS8.0 为例)
- 下载 libevent2,因为 Coturn 编译的时候会用到 libevent2。
wget https://github.com/libevent/libevent/releases/download/release-2.1.10-stable/libevent-2.1.10-stable.tar.gz
- 解压 libevent-2.1.10-stable.tar.gz
tar -zxvf libevent-2.1.10-stable.tar.gz
- 编译并安装 libevent2
cd libevent-2.1.10-stable
./configure && make && make install
- 通过 wget 命令下载 Coturn 安装包(新版本可能会产生未知的编译问题,所以这里下载的是 4.5.1.1 老版本)。
wget https://github.com/coturn/coturn/archive/4.5.1.1.tar.gz
- 使用 tar -zxvf 命令解压 4.5.1.1.tar.gz
tar -zxvf 4.5.1.1.tar.gz