this post was submitted on 05 Oct 2024
374 points (97.7% liked)
Piracy: ꜱᴀɪʟ ᴛʜᴇ ʜɪɢʜ ꜱᴇᴀꜱ
54577 readers
490 users here now
⚓ Dedicated to the discussion of digital piracy, including ethical problems and legal advancements.
Rules • Full Version
1. Posts must be related to the discussion of digital piracy
2. Don't request invites, trade, sell, or self-promote
3. Don't request or link to specific pirated titles, including DMs
4. Don't submit low-quality posts, be entitled, or harass others
Loot, Pillage, & Plunder
📜 c/Piracy Wiki (Community Edition):
💰 Please help cover server costs.
Ko-fi | Liberapay |
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Why is port forwarding important? I have my torrent server running, downloading and uploading perfectly fine. Is port forwarding needed for like something else besides general down/uploading?
To my understanding, it works like this: your client talks to the torrent tracker, then it sends you the data about seeders and leechers. Then your client tries to connect to them, but if neither you nor the other peer have port forwarding, you cannot connect to each other. This is not a problem for popular torrents with lots of peers, but when there are not so many it can be a problem because the other peers might as well not have port forwarding, so peers cannot connect to each other and the torrent will eventually die.
That's why it is recommended to use a VPN with port forwarding. When not using a VPN, if your router supports uPnP you are already port forwarded (with the default settings in qbittorrent).
Thank you! I did some reading and that's also how I understand it: at least one peer has to have port forwarding enabled / listen on a port for two peers to connect. Also I found out about "Hole punching" or "NAT punching" where a middleman server is used to open up ports on two peers that do not have ports forwarded yet to allow them to talk to each other directly. This is also used in BitTorrent. And also explains why it works without explicit port forwarding enabled.