What if it was proxied through mobile network on an unsuspecting user's phone? You risk of blocking a whole city or region.
I think an evolution would be to use some sort of exponential backoff, e.g. first time offenders get banned for an hour, second time is 4 hours, third time and you're sent into the abyss!
Still crude but fun to play about with.