I have been searching for a possible solution but nothing I can find is quite what I am looking for.

I want to track the internet usage of users. This is easy and there is many tools available.

My problem: after they have sent (up and down) a certain amount of traffic their connection should be automatically blocked. For instance after having used 5GB they can't access the Internet anymore.

It would be an added bonus if this could be done with a radius server so that user limits can be easily changed.

In my country (south africa) we have expensive international bandwidth and cheap local bandwidth. It would therefore also be desirable to keep giving users local access after reaching their limit.