基于WebRTC的应用程序的问题

基于WebRTC的应用程序的问题,webrtc,kurento,simplewebrtc,Webrtc,Kurento,Simplewebrtc,我已经开发了一个基于WebRTC的应用程序以及Kurento媒体服务器 此应用程序的问题是: 它只能在开放网络上工作(即,如果在没有防火墙的网络上运行) 在防火墙中,它有时会运行(10次尝试中有一次) 我用防火墙做了一些尝试,我禁用了所有类型的传入/传出流量。我已经为我的应用程序和Kurento媒体服务器创建了一个端口转发 我不确定这些信息有多有用,但我正在部署我的 应用程序与Kurento媒体服务器一起安装在同一物理机箱上。我已经在client.js上配置了google的STUN服务器,我还使

我已经开发了一个基于
WebRTC
的应用程序以及
Kurento媒体服务器

此应用程序的问题是:

  • 它只能在开放网络上工作(即,如果在没有防火墙的网络上运行)
  • 在防火墙中,它有时会运行(10次尝试中有一次)
  • 我用防火墙做了一些尝试,我禁用了所有类型的传入/传出流量。我已经为我的应用程序和Kurento媒体服务器创建了一个端口转发

    我不确定这些信息有多有用,但我正在部署我的 应用程序与Kurento媒体服务器一起安装在同一物理机箱上。我已经在client.js上配置了google的STUN服务器,我还使用代码在kurento上配置了相同的STUN服务器。我还没有配置TURN服务器

    确认一下,信令服务器可以和应用程序的其余部分一起位于防火墙后面,对吗

    我不知道现在该找什么,这方面的任何帮助都会很好

    编辑-1 从中我了解到,我当前的网络(我的网络不工作)存在普通websocket连接问题,它不允许,它只允许安全的websocket连接

    编辑-2

    netscan的图像:

    在我的手机网络中,我的应用程序运行良好,我在Websocket的“普通”栏中看到了所有的绿色

    编辑-3已解决
    最后发现了问题,我们正在使用一个路由器进行测试和开发,我发现路由器有问题,我在同一个路由器上使用局域网电缆,一切正常。来自应用程序的调用工作正常。与防火墙相关的详细信息有助于以后配置防火墙。

    根据您的问题描述,您的防火墙中似乎没有打开所有UDP通信。WebRTC媒体在UDP端口上运行。正如您所提到的,它的工作效率为10分之一,这意味着防火墙中只有少数UDP端口打开。当流量通过tose端口时,您是幸运的。您可以在防火墙中打开端口范围,并在kurento媒体服务器配置中配置相同的端口范围。您的工作应该完成


    即使配置TURN server,您也需要为传出和传入UDP流量打开某些端口。对于TURN server,默认端口为3478或8443,用于向其发送数据,但对于传入流量,您需要在TURN server上配置端口范围,并在防火墙中打开这些端口。始终记住,TURN服务器是可靠的连接方式,但它的成本总是很高。

    根据您的问题描述,您的防火墙中似乎没有打开所有UDP通信。WebRTC媒体在UDP端口上运行。正如您所提到的,它的工作效率为10分之一,这意味着防火墙中只有少数UDP端口打开。当流量通过tose端口时,您是幸运的。您可以在防火墙中打开端口范围,并在kurento媒体服务器配置中配置相同的端口范围。您的工作应该完成


    即使配置TURN server,您也需要为传出和传入UDP流量打开某些端口。对于TURN server,默认端口为3478或8443,用于向其发送数据,但对于传入流量,您需要在TURN server上配置端口范围,并在防火墙中打开这些端口。始终记住,TURN服务器是一种可靠的连接方式,但它的成本总是很高。

    是的,您可能需要TURN服务器,是的,如果客户端可以通过某种方式与它联系,则信号服务器可以位于防火墙后面(这是非常直接和可测试的)。我的意思是,我在这里可能面临什么问题??我尝试了所有选项,包括转弯,但转弯设置失败,我有优先权,因此我跳过它。我现在应该关注TURN吗?是的,你可能需要TURN服务器,是的,如果客户端能够以某种方式联系它,那么信令服务器可以在防火墙后面(这是非常直接的,可以测试的)。我的意思是我在这里可能会面临什么问题??我尝试了所有选项,包括转弯,但转弯设置失败,我有优先权,因此我跳过它。我应该现在关注TURN吗?感谢您的回复,我确实在防火墙中打开了所有传出和传入的UDP端口,并进行了尝试,请查看我问题中的编辑。这是我的新发现。我刚刚找到它,请告诉我是否有办法。好友请与Netscan共享/附加您的网络报告。在您的应用程序中,问题可能是媒体或信号。如前所述,媒体问题取决于UDP设置。对于增强安全websocket应用程序或在防火墙中打开非安全websocket端口(默认TCP端口80)的信号,TCP端口80通常用于报告中未打开的端口。请尝试打开它并进行测试。还有一个问题,我只需要为我正在部署应用程序的机器启用端口80,对吗?当然可以,但一旦它以开放n/w方式工作,而不是以ur n/w方式工作,这意味着开放端口80存在问题,它不应该与代码有任何关系。感谢您的回复。我确实在防火墙中打开了所有传出和传入的UDP端口,并尝试了该操作,请查看我问题中的编辑。这是我的新发现。我刚刚找到它,请告诉我是否有方法。好友请与Netscan共享/附加您的网络报告。在您的应用程序中,问题可能是媒体或信号。如前所述,媒体问题取决于UDP设置。对于增强安全websocket应用程序或在防火墙中打开非安全websocket端口(默认TCP端口80)的信号,TCP端口80通常用于报告中未打开的端口。请尝试打开它并进行测试。还有一个问题,我只需要为我正在部署应用程序的机器启用端口80,对吗?当然可以,但一旦它以开放n/w方式工作,而不是以ur n/w方式工作,这意味着打开端口80存在问题,它就不应该与代码相关。