I've been using mobile internet for last few years and whenever i would try to seed it'd be like 0.2 kb/s at best. I know that it's due to my dynamic IP (or whatever it's called) and i have closed ports.
Then i saw some people say that opening your ports makes your connection better/faster because you're able to connect not only to people with open ports, but closed ones aswell. Does it make sense download-speed-wise? Because how could i take traffic from someone who's unable to seed due to closed ports?
An open (or closed) port has nothing to do with speeds. An open port won’t be faster.
Opening ports lets others connect to you. If one party has an open port (but the other does not), a link can still be made between the two clients. If neither have an open port, neither will make a connection (no transfers). If both do, then either can negotiate the transfer. So at least one needs to be open.
The speed is the speed. Mobile internet tends to be terrible and I imagine upload speeds are heavily capped. Ports don’t help here.
So, this question is more how does NAT function. There are different NAT configurations, but basically when you connect to anything behind a router, that router maps a port to be used for the request. Traffic matching its destination on return is then compared against an internal table and sent back through to your device. Opening these ports do not directly increase speed, but they do allow you to join DHT/PeX swarms. If you see an increase in speed its because you are effectively being saturated by connections passively through the swarm.
In a normal situation to connect to these swarms, you would either need to open a port pointing to the port number you configured your torrent application to use thereby making you visible to it, or enable UPnP which dynamically maps ports for the connections to work. Typically, you wouldn't want to enable UPnP as it is then possible to externally query the router and pull a manifest of UPnP advertised devices that exist on your internal network, however.
The problem with opening ports in your router if on a mobile network is that most networks use CGNAT. This is where your router does not hold a publicly routable IP address on the WAN side and instead maps out a single public IP with many (possibly thousands) of other devices. In this case, you would need something like a VPN service that supports port forwards. They would give you a port that they are forwarding for you. You would take that port number and from the device you connected to the VPN from (like your PC) enter that port number into your torrent client's "listening" port field.
Also, cgnat is not common in USA as there is no,shortage of ip addresses. However many other countries have hit their limits in ip4 and cgnat allows the isps to work well with more customers than addresses. Mine will disable it if you ask.
It is less common in the US, but is gaining more traction especially with carriers starting to release 5G home internet options. Currently, T-Mobile and Verizon both use it by default. AT&T has yet to launch their service but probably by/around 2024.
Thanks for detailed explanation. Im too dumb for some of it, but i think i mostly understood.
So if i use my mobile network directly through a usd cable to my phone (not a USB 4G modem/router stick) the only way for me to use open ports is VPN? But i doubt it's really worth it for me, since i never use VPN despite living in Russia. GoodbyeDPI does all the work for blocked domains
Yeah port forwarding through a VPN really isn't worth it.
It defeats the purpose of using a VPN anyway because the VPN provider needs to know that whatever port number should be routed to your private IP address.
Yes, you would have to use a service like a VPN to open ports in that setup. You mentioned you USB tether from your phone. Do Russian providers use datacaps? Datacapping is common in the US, but almost non-existent in other parts of the world like EU territory, so I was curious. For US, it can be bypassed with TTL mangling on 4G LTE networks, but on 5G its a bit trickier and requires a GRE tunnel to be established between the phone and end device. Just curious if you guys have similar issues.
Honestly, the VPN would just be for opening ports for technical reasons, though. Russian VPN anonomity isn't really a thing, but that anonomity is only used to circumvent US copyright law and any international application of US laws (countries have their own copyright laws I understand, but the US does strong-arm countries into adopting more US-centric versions). If your host country does not recognize those things, then I would imagine that becomes a non-issue for you.
I'd have to see it in the specs, but if you open the inbound port it would allow someone who got your address from the tracker/DHT to proactively connect in and feed you data. More peers = more speed each little bit helps. I don't know if the announce to the tracker specifies 'I need parts A, B ,& C' where peers could connect in offering those if they had them, but it would only be possible if the inbound port is open.
Where defiantly does make a difference is on the seeding side 'I have it all, 100%, come get some' only works if the door is open.