Do you have DNS server, such as dyndns
I used to have (I haven't gotten around to setting it up since I moved) a working no-ip.com account which pointed to my home network.
I set up the port forwarding on my router to sent a hit on port 80 or port 22 to my server.
I opened the firewall on my server to allow ports 80 and 22.
I could enter http://[username].no-ip.info
into my browser from anywhere and it hit my router. My router then forwarded to port 80 on my server, which hit the apache server running there and gave me access to the box. Or I could ssh and it would hit port 22 on my router, which forwarded to port 22 on my server to the ssh daemon.
You might check to see whether your ISP might be blocking the ports you are using to try to connect.
I haven't set it up in my new location because my new ISP blocks port 80, it's not a priority because I'm no longer traveling all the time, and I just haven't taken the time to deal with the nonsense. There are ways to deal with and I'll get around to it when I have time.