qBittorrent doesn't honor "Optional address to bind to" setting when making outgoing connections in the case of a single ethernet adapter with multiple IP addresses #12421
Labels
Network
Issues related to network connectivity
Please provide the following information
qBittorrent version and Operating System
qBittorrent 4.2.3 - Ubuntu 16.04 compiled static link with libtorrent-rasterbar commit: arvidn/libtorrent@983b1d6 and QT commit qt/qtbase@8ed14a3 and latest OpenSSL 1.1.1 stable branch.
What is the problem
I set eth4 as the listen address and I set one of its IPs as the "Optional address to bind to". qBittorrent listens on the correct address, but when making outgoing connections to peers it uses different addresses of eth4, not the specific one I chose. (checked using
lsof -i tcp -i udp -L -n -P | grep qbit
).What is the expected behavior
qBittorrent does as I tell it. It seems the problem is that it doesn't seem to set outgoing_interfaces of libtorrent to the "optional address" to bind to.
Is there any workaround or pull request or undocumented config setting I can try ?
EDIT: I initially thought it was a libtorrent bug: arvidn/libtorrent#4482 but when testing with its client_test it was honoring the setting correctly.
EDIT: Seems it tries to configure the outgoing_address by taking the listen IPs first, something is going wrong in that... and only if the outgoingInterfaces ends up empty does it take the general interface name..
The text was updated successfully, but these errors were encountered: