I guess this is why the default Multiplayer didn't really take hold .... Good old Microsoft can't get basisc TCP/IP and UDP protocols sorted.
I'm clutching at straws here and these images will not probably match your set up but this is how to open ports (sometimes called 'Push Through', 'Pinholing' or 'Virtual Servers') using a DSE router.
Open up the command prompt by clicking Start / Run then typing cmd then press enter. Type ipconfig /all
Look for an IP address starting with 192.* 168.* or 10.* This is your LOCAL IP address of your PC, not your WWW IP address. If you use a router it will generally allocate the same one each time. Write it down. In this example mine is 192.168.1.17.
Go into your router config page. It's usually 192.168.1.2 (for DSE), 10.1.1.1 (for Dynalink) or look at your product's documentation. Look at the shot below. I have forwarded any data traffic that comes through my router on those ports relevant to MS FS directly too my PC's home IP address.
This means that data gets to my PC directly, rather than the router receiving it, saying "WTH is this, I have no idea what it's for, it's probably malicious, lets send it back where it came with a 'no one's home, sorry' message"

All the best ...