mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2026-03-02 22:57:32 -05:00
qBittorrent doesn't always use external service to detect IPv6 / Leaks IPv6 #13956
Labels
No labels
Accessibility
AppImage
Bounty
Build system
CI
Can't reproduce
Code cleanup
Confirmed bug
Confirmed bug
Core
Crash
Data loss
Discussion
Docker
Documentation
Duplicate
Feature
Feature request
Feature request
Feature request
Filters
Flatpak
GUI
Has workaround
I2P
Invalid
Libtorrent
Look and feel
Meta
NSIS
Network
Not an issue
OS: *BSD
OS: Linux
OS: Windows
OS: macOS
PPA
Performance
Project management
Proxy/VPN
Qt bugs
Qt6 compat
RSS
Search engine
Security
Temp folder
Themes
Translations
Triggers
Waiting diagnosis
Waiting info
Waiting upstream
Waiting web implementation
Watched folders
WebAPI
WebUI
autoCloseOldIssue
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/qBittorrent#13956
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @haarp on GitHub (Nov 3, 2022).
qBittorrent & operating system versions
qBittorrent 4.4.5 x86_64
OS: Debian Linux bookworm
Qt: 5.15.1
libtorrent-rasterbar: 2.0.7-1+b1
What is the problem?
IPv4 is always detected through an external service to get the external IP. Relevant log lines look like
Detected external IP: $ipv4.For IPv6, an external service is used to get the IP (this is correct). But in addition, it also just uses system IPv6. Thus, there multipe logs:
And the system's IPv6 is being sent to trackers and thus leaked.
This is relevant when the VPN is on a different machine, i.e. the router. The qBittorrent machine gets assigned the real (non-VPN) IPv6, but is still routed over the VPN in the end. Binding qBittorrent to the VPN's IPv6 is not possible, as the machine doesn't own that address - the router does.
Simple solution: (optionally) disable auto-adding system IPv6s to the external IP pool.
Thanks!
Steps to reproduce
Additional context
No response
Log(s) & preferences file(s)
No response
@ghost commented on GitHub (Nov 3, 2022):
The bug resides in libtorrent library and was reported once but not fixed.
@haarp commented on GitHub (Nov 3, 2022):
Cheers. Do you have an issue number? I'm having a hard time tracking it down. There are some issues that look related (e.g. arvidn/libtorrent#4803) but they're not quite the same and supposedly fixed.
@ghost commented on GitHub (Nov 3, 2022):
I would suggest to create a new ticket there for prompt resolution.
@haarp commented on GitHub (Nov 3, 2022):
Done: arvidn/libtorrent#7176
@lucasmz-dev commented on GitHub (Nov 16, 2022):
qBittorrent is very spotty with IPv6 support, no NAT64 support, it announces your permanent SLAAC address which LITERALLY has your MAC ADDRESS ON IT. It seems or at least someone said it breaks with the fact that the temporary addresses change every 24 hours, and I would bet that the 'Don't allow multiple connections from the same IP' takes only IPv4 mentality into mind and I am pretty sure that it only blocks connection from the same IP and not network. (the first 64 bits of an IPv6 address identify the network)
To be fair I guess every other client is also not properly implementing IPv6 which is hurtful because IPv6 means that people can actually be connectable and create a GOOD network, that isn't currently breaking down because of CGNAT like in IPv4.
@Neustradamus commented on GitHub (Jan 30, 2025):
To follow this ticket.