How is this even possible to IP ban someone? If you disconnect&reconnect to your ISP, you are given a new IP anyway, or if you have a router - then again you can change your own IP, can't you? Or Im getting this whole IP thing wrong?
Which is why you should ban based on multiple different tests:
Thyth mentioned a system of his a while back that he implemented to ban based on multiple fields, when one entry was set off, all the other fields would also be recorded in a table to which future ban checks would be applied, he called it a "viral ban", you may want to ask him about that form of a system if you're worried about returning trouble makers.