0

我正在编写一个 WebRTC 应用程序,尽管在我的局域网内一切正常。ICE Failed但是,当对等方位于不同的网络上时,我会遇到错误。

我的 STUN 服务器返回公共 IP 候选者,所以我认为它设置正确。问题是候选 IP 没有“正确配对”。浏览器总是尝试将一个公共 IP 与一个私有 IP 连接,因此连接失败(请参阅候选对)。

这里可能是什么问题?信令服务器或rtcpeerconnection配置?

4

1 回答 1

1

仅使用本地主机和服务器自反候选者,您只能在您的 NAT 允许来自其他对等方的传入数据包的情况下连接,通常 NAT 不允许来自 NAT 未知来源的传入数据包。您可以按照 RFC-3489 在 WebRTC 实现之外进行 NAT 发现(虽然已经过时,但仍然有用),或者在不知道 NAT 类型的情况下创建 NAT 绑定,如果您在端口限制锥体或全锥体 NAT 后面,这将起作用类型。如果您不想进行 NAT 发现并应用一些智能来遍历 NAT,使用 WebRTC 进行连接的简单解决方案是使用 TURN 服务器来拥有 Relay 候选者。

于 2015-12-11T15:17:22.913 回答