Torsocks fails to resolve domain names where ɪᴘv6 is available.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
python-websockets (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned | ||
torsocks (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned | ||
websocket-client (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
simple step to reproduce :
$ torify wget https:/
--2022-05-22 13:08:03-- https:/
Resolving rpc.ethermine.org (rpc.ethermine.
failed: Non-recoverable failure in name resolution.
wget: unable to resolve host address 'rpc.ethermine.org'
Where the buffer is too small because the first returned address is longer than with ɪᴘv4. Disabling ɪᴘv6 doesn’t work because the issue happens at name resolution (where the returned ɪᴘv6 addresses are normally ignored).
Of course, wget supports socks proxies, but many python packages like WebSockets or aiohttp or web3py don’t and thus have to rely on torsocks for using tor. So there’s no workarounds.
The problem is today ɪᴘv6 is far more available than it used to be… Not only do some websites like Google or Wikipedia provide ɪᴘv6 but many providers like Cloudflare provide ɪᴘv6 to all their protected websites.
As a result, this prevents using torsocks with most of the web and might even make torsocks completely unusable in the future.
I’m reporting it here as that specific part of the project seems to abandonware upstream.
Status changed to 'Confirmed' because the bug affects multiple users.