I’m trying to move over from transmission on my laptop to qbittorrent on my NAS. I have it running rootlessly in a podman container. I wanted the stats to show up on my heimdall webUI so I put both containers into the same network with a Network=heimdallnet line in their quadlets and fired them up again. It worked, except DHTs are dead and the qbittorrent stays firewalled.
After spending too much time on this issue, I asked chatgpt for advice. It suggested I do an iptables rule to allow for nat from the bridge network to the outside world. That did resolve the firewall status but DHTs stayed dead. I gave up and removed the Network=heimdallnet line.
I’m sure this is doable, but I’m not quite smart enough to understand what I did wrong.
What does qBittorrent say when you load a public torrent and click the Trackers tab for that torrent? In a normal network - if these are enabled in qBittorrent itself and the network isn’t blocking torrents/DHT traffic - you should see DHT / PeX / LSD listed as “Working”.
I know nothing about podman but perhaps DHT status will be a clue to figuring out what’s going on.
PS - If you need a test public torrent the Linux Mint downloads are useful https://www.linuxmint.com/edition.php?id=319
EDIT: Also when you start up qBittorrent try viewing the execution log (enabled under View / Log), one of the startup lines in the log is your DHT support that will tell you if it is enabled/disabled. I don’t know if the log later shows anything else re: DHT issues but could be worth a look for that too.
I put it back on heimdallnet and tried downloading fedora linux. Status is firewalled and theres no DHT but the download works and there are no errors in the log. I looked at an i2p torrent I was playing with too and its showing the trackers are non responsive now, but theres no error in the logs.
I think I am not understanding how PublishPort= works in quadlets. That was enough to have it pass those ports to the container before I added the network= string in the quadlet. What is different now? Its like it passes the webUI port and not the others