I'm running a headless Ubuntu 12.04 server on which I've enabled "Desktop Sharing". The server is connected to the Internet via a router. I can access the server from my laptop connected to the same router using the server's ip and vnc port (192.168.0.10:5900) via tightvnc viewer. I wanted to access the server over the Internet, so I set up a DyDNS domain (example.no-ip.org) which points to the routers WAN ip and set up a virtual server rule in the router which forwards all requests on port 8888 to 192.168.0.10:5900. When I put example.no-ip.org::8888 in tightvnc viewer (using a separate Internet connection at a friends house) I can't connect to the server. I can connect to the Apache Web server on the server running at Port 80 over the Internet (at example. no-ip.org) but not the vnc server running at Port 5900. It means the DyDNS service is pointing to the correct ip. The Web server also has a similar virtual server rule in the router pointing all traffic at Port 80 on the router to 192.168.0.10:80. Why is the vnc server not working... Any help?
It's probably best to use the same port on the server and the router. Either stick with the default VNC port and change the router settings or just change the VNC port to 8888.
If things works locally then you know for sure that the routing is the problem.