STUN
STUN 在 WebRTC 播放测试中的作用
解释 STUN 如何帮助 WebRTC 发现公网映射地址,以及它为什么不承载视频流。
网页能否直连
辅助
链路位置
WebRTC 网络辅助
浏览器结论
不是媒体播放协议
一句话结论
STUN 不是视频协议,也不能播放视频。它是 WebRTC 建连时用来发现公网映射地址的辅助服务。
它在视频链路里的位置
在 WebRTC 链路里,STUN 帮浏览器知道“我从公网看起来是什么地址”。这一步用于 ICE 候选收集。
在浏览器项目里怎么用
前端不会播放 stun: 地址,而是在 RTCPeerConnection 的 iceServers 配置里填 STUN 服务。
服务端需要做什么
项目可以使用可信 STUN 服务,也可以自建。复杂网络下 STUN 不够时,需要 TURN 中继。
常见开发场景
- WebRTC 播放测试、低延迟监控、跨网络连接诊断。
排查顺序
- WebRTC 信令成功但 ICE 失败时,检查 STUN 是否可达、UDP 是否被拦截、是否需要 TURN。
推荐转换路径
- STUN 不做媒体转换。它只帮助 WebRTC 建连。
最小可用实现
- 前端:在 WebRTC 配置里加入 STUN URL。
- 服务端:如果面向生产网络,准备 TURN 作为兜底。
开发者判断标准
STUN 不能只按名字判断是否可播,要看它在链路中承担的是源站输入、网页播放输出、低延迟会话,还是网络辅助能力。当前浏览器结论:不是媒体播放协议。落地前需要确认真实源站、是否需要服务端转换、CORS/HTTPS 策略、编码支持和延迟目标。