防火墙阻止与第二台WebSocket服务器的连接

时间:2018-12-11 12:22:16

标签: websocket webrtc

简而言之,我们的Web应用程序有两个单独的服务器。第一个是使用Websockets处理“聊天室”的主服务器,第二个服务器仅通过Websocket处理WebRTC音频聊天室。两台服务器都使用Express创建HTTPS服务器,并使用安全的Websocket和端口443。

我最近遇到了一个问题,其中公司客户端的防火墙阻止了仅与WebRTC服务器的wss连接。在用户浏览器中记录的错误是“ ERR_CONNECTION_TIMED_OUT”,这意味着用户从不通过Websocket连接。其他任何客户都没有发生过这种情况。

Websocket连接在用户和主服务器之间正常工作,并且没有向其防火墙添加任何规则来使用我们的应用程序。

有人遇到过类似的事情吗?哪种防火墙设置可能会导致这种情况?由于服务器位于自己的子域中,这可能是一个cors问题吗?

2 个答案:

答案 0 :(得分:0)

主服务器可能会限制在端口443上发送的数据类型,该端口将使用SSL来保护所传输的数据。

请参阅此page for information on the "Well-know port numbers"

可能需要在主服务器上为此配置的专用端口号上传输WebRTC音频数据。

答案 1 :(得分:0)

问题是主服务器WebSocket使用TCP,而WebRTC服务器使用UDP,并且默认情况下UDP被公司防火墙阻止。

WebRTC应该使用TCP作为备份,但是我假设握手仍然需要UDP。