在WebRTC中,对于通信的两端不在同一个局域网的情况下,通信两端往往无法P2P直接连接,需要一个TURN中继服务,而中继服务可以选用 COTURN 构建。
注:COTURN 是一个开源的 TURN(Traversal Using Relays around NAT)和 STUN(Session Traversal Utilities for NAT)服务器项目
配置
先附上一个 自己部署使用,调试过可用的COTURN 配置。
# 服务器 ip 相关信息
listening-ip=0.0.0.0 # 服务器监听的IP地址,`0.0.0.0`表示监听所有可用的网络接口。
listening-port=3000 # 服务器监听的端口号,用于非TLS连接
tls-listening-port=5349 # 服务器监听的端口号,用于TLS连接
cert=/etc/turn_cert.pem # TLS证书文件路径
pkey=/etc/turn_key.pem # TLS私钥文件路径
cipher-list="DEFAULT" # TLS 加密套件列表
no-sslv3 # 禁用SSLv3
no-tlsv1 # 禁用TLSv1
external-ip=123.56.56.123/172.22.14.243 # 服务器的外部IP地址,用于客户端连接, 注意 / 后跟内网IP地址
realm=123.56.56.56.123 # 服务器的域名或IP地址,用于STUN和TURN协议
min-port=49152 # TURN服务器的最小端口号
max-port=65535 # TURN服务器的最大端口号
# 权限认证 相关信息
fingerprint # 启用指纹机制,用于消息完整性检查。
lt-cred-mec