Thought I would share my simple docker/podman setup for torrenting over I2P. It’s just 2 files, a compose file and a config file, along with an in-depth explanation, available at my repo https://codeberg.org/xabadak/podman-i2p-qbittorrent. And it comes with a built-in “kill-switch” to prevent traffic leaking out to the clearnet. But for the uninitiated, some may be wondering:
What is I2P and why should I care?
For a p2p system like bittorrent, for two peers to connect to each other, at least one side needs to have their ports open. If one side uses a VPN, their provider needs to support “port forwarding” in order for them to have their ports open (assuming everything else is configured properly). If you have ever tried to download a torrent with seeders available, yet failed to connect to any of them, your ports are probably not open. And with regulators cracking down on VPNs and forcing providers like Mullvad to shut down port forwarding, torrenting over the clearnet is becoming more and more difficult.
The I2P network doesn’t have these issues. The I2P is an alternative internet network where all users are anonymous by default. So you don’t need a VPN to hide your activity from your ISP. You don’t need port-forwarding either, all peers can reach each other. And if you do happen to run a VPN on your PC, that’s fine too - I2P will work just the same. So if you’re turning your VPN on and off all the time, you can keep I2P running throughout, and continue downloading/uploading.
I2P eliminates all the complications and worries about seeding, making it easy for beginners to contribute to the network. I2P also makes downloading easier, since all peers are always reachable. And it’s more decentralized too, since users don’t need to rely on VPN providers. And of course, it’s free and open source!
A fair warning though, I2P is restricted in some countries. And in terms of torrenting specifically, torrents have to explicitly support I2P. You can’t just take any clearnet torrent and expect it to work on I2P. And the speeds are generally lower since there are less seeders, and the built-in anonymity has a cost as well. However I’ve been surprised at the amount of content on the I2P network, and I’ve been able to reach 1 MB/s download speeds. It’s more than good enough for me, and it will only get better the more people join, so I hope this repo is enough for people to get started.
deleted by creator
looks easy enough, will try, thank you.
tbh, looked at the thing some while back and noped out when I saw “java” in there; absolutely irrational, I know - just can’t stand the thing. cool that there’s an alternative.
It’s not just the router. The officially recommended I2P torrent client, called I2PSnark, is also in Java and its a pain to get working in Docker. It’s not a bad torrent client, just feels like the official I2P tools still don’t have great support for modern Linux devops. Now that qBittorrent supports I2P the whole stack feels much more at home.
I really want to build an i2p router, and have started a couple times, but the lack of control of what goes through my hardware stops me every time. It’s a cool project and, sadly, looking more necessary every year.
It’s weird I don’t have these hang ups for other systems. Running a meshcore node doesn’t give me the willies. Just for i2p I worry how much csam is going through my router.
It’s true, you never really know what will be going through your router. I guess I just got over it after a few years of struggling with VPNs and port-forwarding. Just felt like the noose was getting tighter, especially after Mullvad stopped providing the feature. My stance is that if I ever knew that such content was going through my PC I would block it, but if it’s all encrypted then what can I do? Same reason why I support encrypted messaging apps - they can be used for harm but is that the fault of the tool? Though I recognize it’s a complex issue.
Agreed. I’ll get over myself one day and build one. For now Airvpn supports port forwarding at an affordable (to me) price, so I let them deal with the moral dilemma.
It’s coming though, i2p is where my server is headed, even if I keep a VPN up too.
It’s weird that all the tier 1 ISPs have no such worries though.
It’s not weird at all. They’re share holder corpos, anti-morality is par for course. Corporations are not our friends.
Interesting, I’ve been looking for a easier i2p torrent application. Gonna try it out this summer.