首页 > 解决方案 > ICE 服务器(google stuns)在 NAT 之后工作了 8 次,但从那时起就无法工作但在本地工作。为什么?

问题描述

请参考这些截图 Image[Behind NAT] -- Image[Same Network] -- Image[Stuns]

伙计们,我已经从 WebRTC 的代码实验室实现了 step-05 代码示例。我提供了 5 个 google 的 stun 服务器,幸运的是代码按预期工作(不使用 TURN)。我能够形成p2p comm。在 NAT 后面的两个客户端之间,我彻底测试了 NAT 后面的一切正常!但经过几次尝试相同的代码和 ICE 服务器配置停止响应。我再也看不到远程流了。即使在重新启动 droplet 和我的网络设备之后。

奇怪的是,当我再次切换到我的 WiFi(本地网络)时,流开始出现。由于我没有更改代码并在 NAT 后面测试了 8 次系统,因此无法发现问题。应该是什么原因?我确定这是 ICE 服务器问题,要么是 google stuns 标记了我的主机(应用程序服务器 ip),要么是需要高级 stun/turn 服务器

请指教..你的想法!

代码参考:https ://codelabs.developers.google.com/codelabs/webrtc-web/#7

建筑学:

信令主机:NodeJs https(自签名)在 DigitalOcean 的 8080 端口运行

标签: video-streamingwebrtcp2ppeerconference

解决方案


由于您已经有一个液滴,我会尝试以下操作:

使用一 (1) 个 Google Stun-Server 进行测试,在 droplet 上设置一个 coturn 实例并在您的配置中填写凭据。这是一个 10 分钟的事情,之后您会发现这可能导致了错误。


推荐阅读