SOCKS implementation does not support UDP
Categories
(Core :: Networking: Proxy, defect, P2)
Tracking
()
People
(Reporter: linxin19812012, Unassigned)
References
(Blocks 1 open bug)
Details
(Whiteboard: [necko-triaged])
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:108.0) Gecko/20100101 Firefox/108.0
Steps to reproduce:
-
Prepare a SOCKS5 proxy server
-
Open about:preferences in the browser and click "Network Settings"
-
Fill in "Manual proxy configuration", "SOCKS Host", "Port"
-
Select "Proxy DNS when using SOCKS v5"
-
Open a webrtc test page, for example https://ip.voidsec.com/
Actual results:
The "Web RTC:" item on the page, the relevant information is empty
Expected results:
The "Web RTC:" item on the page displays the address information of webrtc
Comment 1•1 year ago
|
||
The Bugbug bot thinks this bug should belong to the 'Core::Networking' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.
Randell, could you take a look at this one?
Comment 3•1 year ago
|
||
I wonder if it's a limitation of wanting to use UDP for WebRTC, but not being capable of doing that over SOCKS5 possibly as a result of the lack of implementation.
It's definitely not a global setting problem breaking everything at least.
I use containers, and the ones with a proxy specified can't use WebRTC while the functionality remains working outside of those containers.
Yes, I think WebRTC proxying doesn't work when a proxy is in use.
The SOCKSIOLayer does not have a method for sendto and recvfrom, so presumably it can't proxy UDP traffic.
This limitation is also present in (Chrome's SOCKS implementation](https://chromium.googlesource.com/chromium/src/+/HEAD/net/docs/proxy.md#socksv5-proxy-scheme).
Comment 5•6 months ago
|
||
This seems the bug preventing us from fixing this Mullvad Browser issue: WebRTC leaks UDP traffic outside socks5 proxy .
If we set media.peerconnection.ice.proxy_only_if_behind_proxy
to true we just break WebRTC.
Is there any hope for a fix or a work-around suggestion?
Thanks in advance!
Comment 6•6 months ago
|
||
Looping in webrtc team
Comment 7•6 months ago
|
||
Correct, we have not implemented UDP proxy support. Right now, if you want a proxy, you need to use TCP.
Updated•5 months ago
|
Comment 8•4 months ago
|
||
Moving bug to Core/Networking: Proxy.
Comment 9•4 months ago
|
||
Moving bug to Core/Networking: Proxy
Comment 11•4 months ago
|
||
Are you planning to add UDP support to SOCKS proxying?
Comment 12•4 months ago
|
||
It is on Necko's roadmap, so we will get to it eventually. But currently there is no estimate on when we start working on this. We are definitely taking patches and would help out mentoring if anyone is interested in implementing it.
Comment 13•4 months ago
|
||
Thx.
Description
•