In this post, I will show you how to run any server while having dynamic IP in your home network. Its pretty simpler than you think. The concept behind it is DDNS, dynamic domain name server. There are many DDNS service providers you can choose any of them. I will suggest, make your account on http://dnsdynamic.org , which is a free DDNS provider, and is also operate able from web client. Create a domain in manage section of above website, run the web client for the domain you created, do not close your web bowser.
As you always keep web client open, you IP address will be know to the DDNS server, so as it will forward request for your domain to your Dynamic IP. The next work is of your router, so you want to make a web server you have to forward all port 80 requests to you specified IP of your Desktop/Server. Similarly you can install SSH, FTP, TELNET servers, just by changing entries in the router, virtual server configuration.
To configure your router, you need to login to your router configuration wizard, and afterwards add an entry for your IP address, with port number accordingly. For more configuration wizard for your router, visit reference sheet of your router.
Enjoy free and private home servers. Good Luck.