http://portforward.com/help/setup_static_ip_address.htm
Static IP fixes it all, i think it's because when java latches onto the server ip it also accidently latches onto your IP through your internet adapter which constantly changes it's IP but with a static IP you don't change your IP