【问题标题】:How to connect to stun and turn servers using simple peer如何使用简单的对等点连接到 stun 和 turn 服务器
【发布时间】:2026-01-14 00:35:01
【问题描述】:

我使用简单的 peer 和 socket.io 开发了一个视频聊天应用程序。但是当我尝试托管应用程序时,由于防火墙问题,无法连接对等方。我知道 STUN 和 TURN 服务器将用于此目的。是否可以使用简单的 peer 连接到这些服务器? 如果有怎么办? 任何解释或参考文章都会有所帮助

【问题讨论】:

    标签: socket.io webrtc stun turn simple-peer


    【解决方案1】:

    你可以像original webrtc那样在simple-peer config中添加iceServer配置,像这样:

    {
      initiator: false,
      config: { iceServers: [{ urls: 'stun:stun.l.google.com:19302' }, { urls: 'stun:global.stun.twilio.com:3478?transport=udp' }] },
    }
    

    您可以添加眩晕服务器和/或转向服务器。

    【讨论】:

      【解决方案2】:

      如果您阅读simple-peer npm 包的源代码,您会发现它当前使用的是

      URLs: [
        'stun:stun.l.google.com:19302',
        'stun:global.stun.twilio.com:3478'
      ]
      

      满足其公共 IP 发现需求。

      您的应用在防火墙的情况下无法运行,因为仅stun 服务器在防火墙的情况下是不够的。

      在这种情况下,除了STUN 服务器,您还需要一个TURN 服务器。

      TURN 是回退,如果STUN 无法交付。

      【讨论】:

        最近更新 更多