我需要 TURN 服务器吗?

Lau*_*ren 5 webrtc turn

在哪些情况下我应该使用 TURN 服务器?

现在我有一个完美运行的 WebRTC 应用程序。该应用程序即将发布。

我是否需要设置自己的 TURN 服务器,或者这可能仅适用于主要应用程序?

Kyl*_*ker 11

WebRTC 可以通过多种方式进行连接,并且当它在第一个选择失败时逐渐下降到较低的偏好选择。

  1. 天真的直接p2p与自己的IP
  2. 如果失败,请使用 STUN 服务器来确定我们落后的 IP(例如路由器)
  3. 如果失败,则不可能实现真正的 p2p,请使用 TURN 服务器来中继流量。

在典型的 webRTC 应用程序中,大约 20% 的连接需要 TURN 服务器。它可能适合您,但尝试通过手机连接访问您的 webRTC 服务(通常需要 TURN),您会发现并非所有连接在 p2p 方面都是相同的。

https://www.frozenmountain.com/developers/blog/webrtc-nat-traversal-methods-a-case-for-embedded-turn

此图显示了各方 NAT 的哪些类型的连接导致需要 TURN(而不是 STUN)。


小智 2

关于这个主题已经有很好、清晰的著作和讨论。你可能想浏览一下它们 -