10

我读到 WebRTC 使用中继服务器,如果直接对等连接由于防火墙而不起作用。

有没有办法检查,如果是这种情况?

4

2 回答 2

12

当您建立 WebRTC 连接时,您设置 STUN 和/或 TURN 以供 Web 浏览器使用。如果您用这两个选项通知网络浏览器,网络浏览器将首先开始尝试使用 STUN。然后,如果不成功,它将尝试使用 TURN。

“中继服务器”是一个 TURN 服务器。

据我所知,没有标准的方法可以知道 Web 浏览器决定使用哪个选项:STUN 或 TURN。

另一方面,如果您是 TURN 服务器的所有者,您可以查看 Web 客户端是否使用它,然后将此信息发送给客户端。

更新

这是我的代码:https ://github.com/fycth/webrtcexample/blob/master/www/js/rtc_lib.js

你可以看到我只使用 STUN 服务器,所以它是 p2p 或什么都没有,没有中继。

于 2013-08-12T05:52:58.143 回答
4

在铬。转到 chrome://webrtc-internals,转到成功的连接-googCandidate 对(黑色字母)检查 googLocalcandidatetype 是否为中继,然后 webrtc 使用中继连接。如果 googLocalcandidatetype 是本地的,那么它使用点对点连接 在 firefox 中,转到 about:webrtc,如果成功的连接包含任何候选作为 relayed-udp,那么 webrtc 使用中继连接

于 2017-04-25T11:30:47.630 回答