The trouble with running so many IPs in a block list is that it has to load the block lists up... Having 5k blocks in a iptable isn't going to run well.
Maybe running a blocklist that can be queried from a fast db that you provide for a premium $?
In the firewalls I'm used to, they are used to handling 100k to millions of IP address and/or rules to filter (pfsense - pfctl).
However, I'm talking anything from dedicated firewall machines to firewalls on a dedicated server, that is already multi-purpose web-server, so any load issues is insignificant in comparison to what else it's doing, by using CSF and/or fail2ban to build some pretty large block lists.
So iptables is also used there, while it does have smaller limits, 5000 ip address' is still not that big of a deal any more as long as it's not some tiny vps using half a proccessor core and 256mb of ram.
5k is relatively small scale still in my opinion and since the lists are growing so quickly, it will be good for me to break them apart for those who want smaller ones, so don't feel like I'm ignoring this issue. I can still make this useful for the small user who is concerned by large lists impacting their servers performance.
The aim with my project, is to blocking just the worst offenders who are attacking a lot of others but maybe just haven't targeted your server yet. So blocking them advance is all I hoping to do so it's helpful in preventing problems that comes with them.
There are already those services out there, that allow for you to query individual address' from a list(s), usually done via a dns service.
I'd prefer to do this for free, so it gets adopted and by just downloading out list and importing it automatically once a day (or a frequency of your choosing), it just provides a level of protection that is good. This puts minimal load on both my servers and theirs once it's done.
There are better suited services out there, for those who want to know at the time of an attack if an IP address should be blocked.
I already use fail2ban (it's great tool along with CSF). Thanks to pointing out blocklist.de I can check it out to see if it definitely fills all the criteria I hope for in finding a good source of data and IP address to validate how bad they are and if they deserver to be on the block list I'm creating. It should, but I have to be sure, so I take false positives very seriously and if I don't have enough data to judge that, I don't use it.
I'm under no illusions, this list my be of no use to some, as your service provider (web host) might already be blocking most of these. However for those with minimalistic hosting or those fully in charge of the routing and hosting aspects of your servers, you won't have that sort of protection, unless they put it in themselves. So a free option might benefit them, just like it does me.