WebRTC 连接建立
如何用 WebRTC 建立可靠的 P2P 连接。
挑战
在浏览器之间建立 WebRTC 连接,需要处理信令交换、ICE 候选和连接协商。
尝试过的方案
- 简单 WebSocket 信令:用轻量级信令服务器交换连接信息
- STUN 服务器配置:配置公共 STUN 服务器做 NAT 穿透
- 连接状态管理:实现完整的连接生命周期状态处理
有效的做法
- 配置多个 STUN 服务器,提高连接成功率
- 实现连接超时和重试逻辑,提升可靠性
- 用二维码交换信令信息,简化配对流程
没用的做法
- 一开始没配 STUN 服务器——跨网络直接失败
- 复杂的手动连接信息交换 UI——太麻烦了
总结
理解了信令流程之后,WebRTC 的建连其实很直接。关键是有一个简单的信令机制和合理的 STUN/TURN 服务器配置。
如果重来
会实现 TURN 服务器兜底,解决企业网络防火墙严格的场景。