At my previous job we routinely gave out IP-based bans, and it worked pretty well; the most insistent guys gave up after their third or fourth IP banned at most.

I have a public facing website that is blocking about 500 obviously botted requests per second. About half are from residential proxies.