For a while now, I've been looking at how we deal with customers that have not paid their bill. At the moment, after several gentle email reminders being sent to an email address that the customers subscribe to themselves, we essentially reprogram the CPE to disable the ethernet port. Needless to say, there are positives and negatives with doing it this way.
I'd really like to do some form of a captive billing portal that can isolate the specific customer's traffic, redirect all web traffic to our portal with a notice saying they need to pay their bill and then allow access only to our online billing system.
Using some network magic (vlans) and possibly use a few pieces of software already written for something like this I'd love to find an open source solution or other ideas for doing something like this. Given our internal setup and the numerous different customer CPE configurations (bridged v.s. nat devices, static IP vs dynamic IP), I don't think any one method like hijacking thier DNS or http redirection will work alone. I know it won't work for everyone but I'd love to be able to do it for the majority of customers.
So, I ask you all. In the open source/Free software world, what are people using to accomplish something like this and how is it being done?
Edit: We are a small WISP. Our CPE consists of mostly cambium canopy SMs but have some WiMax hardware mixed in as well.