It's not automatic, but you can technically block countries. From the Connections tab in Options, there is an IP Filter option for data files. I believe the format is X.X.X.X-Y.Y.Y.Y
Country IP assignments are handled by ARIN in North America and RIPE NCC for Europe. Those are the two main ones, but LATAM, Africa, and APAC territories have their own respective groups as well. So, every main German IP block is known and searchable via RIPE. You would have to format your lists using that info.
It may not be super effective as IPs can somewhat float, but that would be the method.
EDIT: Here is an example using Germany again that shows the data you'd have to format - https://lite.ip2location.com/germany-ip-address-ranges?lang=en_US
That would be a lot simpler if Qbittorrent accept CIDR notation like any sane human should be using.
It's posible to use a file too. The is an option just above that filter field. I think it's more convenient, because there might be a lot of small ranges. The file just have to be formated in specific way. I remember I even found a website that allowed to export ranges for specific country in a file and I made a small Python script to format that file.
Yeah, I was referring to the field that takes in dat files. Honestly, it sounds like the OP is more interested in just outright blocking countries completely with Qbittorrent just one application abidding by that. At that point, OP should take the IP ranges and script them into iptables statements. I've never created 1000+ iptables configurations though so I don't know what kind of performance hit that creates if any.
I misread your post. I looked into my script and I actually used ip2location as a source for IP ranges. However, I can't seem to find a way to download them (at least without an account) in csv file. Most likely they changed that. Or maybe I just copied them from the page by hand (pro tip just mark first cell, then go down to the end of the table and while holding SHIFT mark the last one).
I can find where I found it, because that was first and last time I dealt with *.dat files, but I script makes line look like this:
1.0.1.0 - 1.0.3.255 , 000 , china ban ip range from ip2location
with spaces and all.
It seems to work. If anyone wants a China ban list or the script, let my know with reply.
I don't know how much extra memory my qBittorrent uses with that list (718 ranges/lines), but as a reference with 1427 torrents it uses ~8GB of RAM.
What does the "000" mean? 1427 is impressive also!
I would love to be 100% sure about this. I did this few years back. I know I searched on the internet on how the dat file should look like and came across that AMule uses these files. And explanation for all these fields can be found here.
That documentation is short but to quote the most relevant part:
IPs range , Access level , Description Access level values lower than 127' are blocked IPs and values over 127 are allowed IPs.
The thing is I don't know if this is a some kind of standard or not and I don't know if qBittorrent needs (and respects) those two other fields. Maybe it even ignores them, because why would an IP range would be in IP blocklist if not to block it? However, at that time I could only find that information, it did make my work any harder, it seemed to work, so I did not try to create and use a filter without them.
Interesting question… honestly why?
There isn’t an easy way that I know of… but you can block ip address using a list of the address blocks for that country.
I’d think I’d suggest a vpn? Or I’m not understanding the context
For me it is China after I noticed that a lot of them uses some kind of strange client that always shows that they have 0 progress to get better priority from other pears. Later after I started to look into it I noticed that they do not even seed.
So you're going to block me too because some other people do shady shit?
Yes
based
Animal
And then eventually all the Chinese beers will get vpns or whatever to mask their ip and country of origin, thereby defeating the whole purpose and creating more cpu usage to lookup the blocks for every connection… if it's very dumb things to do, it doesn't solve the problem at hand. I don't know how to solve it but one day there will be a client that someone will make that will.
Some people do it as a political statement. Blocking Israel is a real example I've seen.
Fuck Israel, bring back Palestine!!!
#IsraelApartheid #IsraelIsTheEmbodimentOfIslamophobia
I would block Palestine's IP address, or all 2, or how many they have.
For example, when your country could monitor your Internet connections to see if you access resources from a hostile country.
Racism
Good, glad this shithouse comment is getting the proper downvotes
What's wrong with my comment?
Newsflash: there's real-world reasons to try to stop people from doing things.
Yeah… I feel you… Those damn Canadians.
We're actually Brazilians with a VPN.
Technicly you can use deep package inspection and GEO block incoming and outgoing trafic. But it requires some good network gear.
The comments here are AIDS.
Who are we having here? A racist? 😁😉
How are you supposed to know someones skin color from an IP? The word you're looking for is xenophobic.
Race isn't a colour so you're also wrong.
Most defining characteristic of race is different skin tones. Literally what racism is about. You don't see people referring to races as their historical decent.
Since when is China a race?