这里有两个非常相似的问题,但都没有得到回答:
rfc5766-turn-server as TURN and STUN for webrtc application问题1.说“使用rfc5766-turn-server足以充当TURN和STUN服务器,或者我还需要运行电击服务器”。
missing relay candidates from TURN server谈到缺少中继候选人,这是我仅提出turn
请求时所看到的效果。
我们为coturn
配置了turns
和use-auth-secret
,并使用https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/进行测试。
stun:hostname:5349
时,看到srflx
候选对象(我的外部IP)。turns:hostname:5349[username:password]
时,我看到了relay
个候选者(TURN服务器的公共地址)。这看起来不错,但是我是否需要向同一服务器发出2个请求? turn
不应该包括stun
并给我srflx
和relay
候选人吗?
coturn
配置为在单个请求中返回两者吗?答案 0 :(得分:2)
如果在客户端中配置了TURN / UDP,则无需将服务器配置为STUN服务器。
翻转UDP将自动返回一个srflx候选对象,您应该能够在the流测试页面上看到它。如果您查看在Wireshark中交换的数据包,您将看到 * STUN绑定请求和包含公共ip的绑定响应,如服务器在xor-mapped-address字段以及 *一个STUN(TURN)分配请求,其响应还包含一个xor-mapped-address
TURN TLS或TURN TCP不会这样做,因为这不适用于udp打孔。