Ready-to-use SRT / WebRTC / RTSP / RTMP / LL-HLS media server and media proxy that allows to read, publish, proxy, record and playback video and audio streams.
MIT License
10.75k
stars
1.4k
forks
source link
[WebRTC] UDP Peer connection issue with non-chromium browsers when client is connect to VPN #3522
This issue affects WebRTC clients using Safari (iOS/macOS) and WebKit-based browsers like Chrome on iOS.
WebRTC works as intended in these browsers when NOT connected to a VPN. However, the peer connection fails when the client device is connected to a VPN.
Chromium-based browsers such as Arc, Brave, Chrome, and Opera are not affected by this issue and continue to work with and without the VPN on the same device without any issues.
Firefox is inconsistent when a VPN is enabled. It usually works after reloading the page. Unlike Chromium-based browsers, WebRTC in Firefox only works when using the server's IP address and does not work with loopback addresses like 127.0.0.1 or localhost when connected to a VPN, although these addresses work when not connected to the VPN.
Setting webrtcLocalTCPAddress resolves the issue for WebKit (issues with firefox remain unchanged), which leads me to believe it's some kind of UDP peer issue in WebKit.
Which version are you using?
v1.8.3
Which operating system are you using?
Describe the issue
This issue affects WebRTC clients using Safari (iOS/macOS) and WebKit-based browsers like Chrome on iOS.
WebRTC works as intended in these browsers when NOT connected to a VPN. However, the peer connection fails when the client device is connected to a VPN.
Chromium-based browsers such as Arc, Brave, Chrome, and Opera are not affected by this issue and continue to work with and without the VPN on the same device without any issues.
Firefox is inconsistent when a VPN is enabled. It usually works after reloading the page. Unlike Chromium-based browsers, WebRTC in Firefox only works when using the server's IP address and does not work with loopback addresses like 127.0.0.1 or localhost when connected to a VPN, although these addresses work when not connected to the VPN.
Setting
webrtcLocalTCPAddress
resolves the issue for WebKit (issues with firefox remain unchanged), which leads me to believe it's some kind of UDP peer issue in WebKit.Describe how to replicate the issue
Did you attach the server logs?
Did you attach a network dump?
no