带有VPN的WebRTC ICE在Chrome中工作,但在Firefox中失败

时间:2019-03-04 13:37:30

标签: webrtc ice coturn

我已经建立了一个一对一的webrtc通信系统(点对点)。我将coturn用作STUN和TURN。 该连接适用于Chrome(72)和Firefox(65)的whithot VPN。 当位于对称NAT之后(例如,使用手机时),该连接也可以在chrome和firefox中使用。 使用VPN和chrome时,该连接也有效。

使用VPN和firefox时,连接(ICE)失败! 带有两个流行VPN的Testet。

任何想法,可能出什么问题/如何解决?

我的TURN服务器配置如下:

listening-port=3478
tls-listening-port=5349
realm=xyz.com
min-port=49152
max-port=65535
user=uuuuuuuuuuuuu:ppppppppppp
pkey=/usr/local/psa/var/modules/letsencrypt/etc/live/turn.xyz.net/privkey.pem
cert=/usr/local/psa/var/modules/letsencrypt/etc/live/turn.xyz.net/cert.pem
CA-file=/usr/local/psa/var/modules/letsencrypt/etc/live/turn.xyz.net/chain.pem
mysql-userdb="host=localhost dbname=turnxxxxxx user=uuuuuuuuuuuu password=ppppppppppp port=3306"
fingerprint
lt-cred-mech

1 个答案:

答案 0 :(得分:0)

当VPN开启时,您应该期望所有与WebRTC相关的应用程序在所有浏览器中都将失败。我有完全相反的情况-启用VPN时,除FireFox之外,其他浏览器均无法工作。 在我的应用中,根本没有使用TURN服务器。 我的VPN以某种方式错过了FireFox。

通常,由于IP地址泄漏偏执狂,VPN禁止WebRTC。您的真实IP地址可能通过信令消息和STUN绑定响应泄漏,因此,一旦VPN看到STUN绑定请求,它们就会将其杀死。 VPN无法杀死您的信令消息,因此您的专用IP仍然会泄漏,但这仅对于IPV6才是问题,因为IPV6的专用IP和公用IP相同。但是,当需要STUN绑定请求/响应时,VPN会杀死它。不确定Chrome的生存方式。