You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker部署Coturn测试返回code=701 TURN分配请求超时如何解决?

问题描述

使用Coturn官方Docker镜像部署Coturn服务器,部署命令如下:

docker run -d --network=host --name coturn -v $(pwd)/turnserver.conf:/etc/coturn/turnserver.conf coturn/coturn

turnserver.conf配置内容如下:

realm=some.domain
server-name=turnserver
listening-ip=0.0.0.0
external-ip=172.21.196.122
listening-port=3478
log-file=stdout
fingerprint
verbose
user=hmd:hmd123
lt-cred-mech

使用WebRTC官方Trickle ICE测试工具测试时,返回错误:Coturn server gave code=701 TURN allocate request timed out
错误截图:
错误截图1
错误截图2

错误原因
  • 核心错误为配置的external-ip为内网IP,未填写服务器公网IP,公网侧客户端无法和Coturn完成中继链路协商
  • 云服务器安全组或本地防火墙未开放Coturn所需端口:TCP/UDP 3478(监听端口)、UDP 49152-65535(默认中继端口段)
  • 测试时填写的TURN服务器地址、认证信息有误,未正确携带端口或协议标识
  • 部分Docker环境host网络模式未生效,Coturn无法正常监听物理网卡端口
修复方案
  • 修正turnserver.conf中的external-ip配置:将参数值替换为服务器的公网IP,若服务器为NAT转发的云实例,可按external-ip=公网IP/内网IP格式填写,示例:
    external-ip=120.xx.xx.xx/172.21.196.122
    
  • 放行对应端口规则:云服务商安全组入方向放行TCP/UDP 3478、UDP 49152-65535,服务器本地防火墙(ufw/firewalld/iptables)同步放行对应端口规则
  • 验证容器运行状态:执行docker logs coturn查看启动日志无报错,执行netstat -tunlp | grep 3478确认端口正常监听
  • 正确填写测试参数:Trickle ICE工具中TURN服务器填写格式为turn:公网IP:3478,用户名填hmd,密码填hmd123后再测试

内容的提问来源于stack exchange,提问作者HamedH

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 03:30:00