Wow, that's exactly what we've built, basically. The problem is finding a reliable source of what CIDR ranges they provide our region without storing and guessing ourselves to make sure it's local. We go through a lot of ARIN data each week to make sure one neighbor isn't banning another because he can't remember his password.
Our next step was refactoring with geo-location, but I figured there has to be feeds from these providers like StarLink does .... oy.