【问题标题】:Is Numb Turn server not working or are my configurations wrong?是 Numb Turn 服务器不工作还是我的配置错误?
【发布时间】:2021-01-27 00:01:12
【问题描述】:

我正在使用https://numb.viagenie.ca/ 提供的免费 TURN 服务器。 STUN 服务器也是公开的。

我正在使用以下配置:

const iceConfiguration = {
    iceServers: [
        {
            url: 'stun:stun.stunprotocol.org'
        },
        {
            url: 'stun:stun.sipgate.net:10000'
        },
        {
            url: 'turn:numb.viagenie.ca',
            credential: 'mypassword',
            username: 'myemail'
        }
    ]
}

我创建了一个提议,将其发送到另一个对等点(不同的 NAT),然后尝试使用答案设置远程描述。在调用 myConnection.setRemoteDescription(answer) 后,它会无限期地保持挂起状态并且不会得到解决。此外,远程对等方可以毫无问题地设置其远程描述。这一切都适用于同一网络中的设备。所以,我猜问题出在中继服务器上。

如果是这样,我应该放弃公共 Numb 服务器并选择将 Coturn 与 DigitalOcean 托管一起使用,还是我在这里做错了什么?

【问题讨论】:

    标签: javascript networking webrtc relay turn


    【解决方案1】:

    在设置全新的 TURN 服务器之前,您可以尝试了解实际发生的情况:如果您使用 Wireshark 之类的应用程序在计算机上进行跟踪,并过滤 stun 消息,您应该能够看到浏览器向 TURN 服务器发送 Binding Request 和 Allocate Request 方法。

    服务器缺少响应可能意味着服务器不可用、端口错误或防火墙阻止浏览器访问 TURN 服务器。

    如果凭据错误,浏览器将收到带有消息完整性属性的分配请求的 401 错误。

    您还可以通过运行 WebRTC 示例应用程序来验证 TURN URL 和凭据,该示例应用程序在 https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/ 处理 ICE 候选人收集。

    【讨论】:

      【解决方案2】:

      Numb TURN 服务器似乎无法正常工作。不知道为什么。但它们确实出现在 WebRTC 涓流 ICE 示例应用程序中。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-09-13
        • 2017-03-27
        • 1970-01-01
        • 2012-10-04
        • 2012-01-15
        • 1970-01-01
        • 1970-01-01
        • 2019-10-07
        相关资源
        最近更新 更多