I've noticed that many people who play warcraft 3 can't host and i will teach you how to get it working by fixing the main problem. Your router. I'm going to teach you how to port forward your router which can be used for many other things but the only one i know is how to make it so you can host in Warcraft 3... The rest is up to you.
This is my first instuctable so don't be hating!
Pictures taken from www.PortForward.com
Step 1: Static IP
For this to work your going to need a static IP address. If you know you already have one skip to the next step.
By the way i'm assuming your running on the same system as me (Windows XP) but i believe it is fairly similar on all systems anyway.
To start your going to need to figure out your current IP address and other little things.
Start by clicking start (convenient isn't it) click run and type in "cmd" and hit enter. once in here type in "Ipconfig /all" and hit enter. a few lines of information should pop up. Write down the IP address, Subnet mask, Default Gateway and DNS servers