6个版本 (稳定)
1.2.0 | 2023年6月24日 |
---|---|
1.0.3 | 2023年4月3日 |
1.0.2 | 2023年1月22日 |
0.2.0 | 2023年1月1日 |
#1582 在 网络编程
每月 39次下载
285KB
3K SLoC
TURN-RS
由 ❤️ Rust 实现的TURN服务器
一个纯Rust实现的TURN服务器,与coturn不同,提供更灵活的外部控制API,并提供相同的表现力和内存占用,该项目最兼容在webrtc中使用stun/turn服务器的情况。
谁在使用它?
目录
功能
- UDP和TCP传输。
- Webhooks API。 (
hooks-api
) - 外部控制器API。 (
controller-api
) - 配置文件中的静态身份。
- 仅支持长期认证。
- 虚拟端口支持。 (
分配请求不分配真实的UDP端口
)
Crates
stun
,快速且无成本的STUN消息解码器和编码器。 (crate
).turn
,处理TURN会话的库。 (crate
).turn-server
,基于TURN库的TURN服务器实现。
使用
cargo install turn-server
使用配置文件启动
turn-server --config=/etc/turn_server/config.toml
请查看示例配置文件以获取详细信息: turn_server.toml
Docker
docker pull quasipaa/turn-server
通过 --v
覆盖镜像内 /etc/turn-server/config.toml
路径的定制配置文件。
Linux服务
./install-service.sh
此操作将编译项目并安装及启动服务。
构建
先决条件
您需要安装Rust工具链,如果您已经安装了它,可以跳过此步骤,安装Rust,然后获取源代码
git clone https://github.com/mycrl/turn-rs
构建工作空间
以发布模式编译整个工作空间
cd turn-rs
cargo build --release
编译完成后,您可以在“target/release”目录中找到二进制文件。
许可证
MIT 版权 (c) 2022 Mr.Panda。
依赖项
~13–29MB
~433K SLoC