Fire walls and routers are indeed the main culprit preventing
you from hosting again.
The solution would be port forwarding, however this is rather
limited to static IP users.
Dynamic IP, e.g. Starhub users might have to change the forwarded
IP as it would be constantly changing.
For more information, please use the following websites, however
take note of the current Starhub/Singnet conflicting internet
issues.
i.e Starhub users connecting to a Singnet host will experience very
heavy lag/delay.
http://www.portforward.com
The ports you need to forward are : 6110 - 6119 ( A variable number
is given because this is subject to your game options)
To find your port used,
OPTIONS > GAMEPLAY > "????" the number will appear there.
that is the ONLY port you need to forward.
To find your IP,
DESKTOP > START > RUN > TYPE IN "CMD"
A black box will appear,
TYPE IN "IPCONFIG/ALL" and look for IP address
For more information go to http://www.portforward.com
you will need to know the brand and router of your design which can
usually be found on the retail box or on your router itself.
As for firewall, you need to bypass the port or even disable it if
all else fails
(This specifically targets "windows firewall")