OS: Windows 95/98/ME/2000/NT
Other OS: Linux, Mac, Amiga.
Approx. time: 1 hr.
When you click on a link on a website, what you are doing is making your computer communicate with another computer elsewhere. A short while after clicking on the link, you get a response. But how does your computer know how to find the other computer on the Internet, and vice versa? Well, I want you to think about the mail man for a minute. How is the mail man able to find and deliver mail to your address? The mail man is able to find your address because it is unique. Nobody else on earth has the same address. The same is true of computers on the Internet. Anytime your computer is online, it has a unique address that enables other computers to find it. That address is called IP.
IP stands for Internet Protocol, and you really don't need be concerned about the details, unless you're interested in the technical aspect of things. If you're interested in knowing how the internet works, pick up a book on DNS and TCP/IP and read them.
Now that we know that your IP address allows other computers on the Internet to find you, let's talk about the two main types - static and dynamic.
Static ip is one that does not change. Depending on the type of Internet connection you have, your isp may have assigned you a static ip. Computers that are on some sort of permanent Internet connection have the same ip address all the time. Examples are computers in educational institutions, libraries, and some home users on dsl and cable. By the way, you could find out what your current IP address is by clicking on Start/Run. Type in winipcfg, and click OK. The window that comes up will have your current ip.
Dynamic IP on the other hand changes from time to time. Most home computers connected to the Internet through a dial-up modem have dynamic ip. Each time you make a new connection to the Internet, your isp assigns your machine a different ip address.
What is the idea about dynamic ip? Why don't we all just have our own static ip address so we know what it is all the time? The answer is that there is a shortage of ip addresses, and your isp has to conserve the few available to him by sharing them among the thousands of subscribers he has.
Consider this scenario... Why don't restaurants assign each customer a permanent table, so that each time a customer visits the restaurant, (s)he'll have the same table? I'm sure you know the answer already. It's because there aren't that many tables available, so tables are assigned to customers on a per-visit basis. Once you give up the table you were assigned, that table is given to someone else, so that even if you changed your mind and wanted to stay longer at the restaurant, you'll have to settle for another table. This analogy is similar to dynamic ip addresses. Just as the restaurant doesn't have enough tables for each visitor, your isp does not have enough ip address.
What is the fuss about dynamic ip anyway? What difference does it make what type of ip you have? As long as you get on the internet, that's all that matters right? Well, not quite. :) If all you do with your Internet connection is surf the web, then to you ip is ip, be it dynamic or static. However, if you intend to run your own server (web, ftp, hotline, Quake, telnet, etc.) and many other services from home, then the story is different. Let's say you want to run a web or an FTP server, people would have to know your ip address before they can connect to your machine. So if your ip address changes each time you're online, how do you let them know what your current ip is? That is the problem with dynamic ip.
The objective of this tutorial is to show you how you can obtain a constant web address for your dynamic ip. That way, when you run your own website from home, people don't need to know your current ip, all they need is your web address such as jake.dyndns.org. Actually, you can also create a web address if your machine has a static ip.
How does it work?
There are some good folks that provide this service for free, eg. http://www.dyns.cx. I will give you a list of providers at the end of this tutorial.
So now you understand how you can have a constant web address on a dynamic ip.
- You register with them and choose a name for your address.
- You then download a program that you will run on your computer each time you run your server. Such programs are called updaters. That program will know each time your ip address changes, and it will inform the dyns.cx server of the new ip address.
- Anybody trying to connect to your server will first connect to the dyns.cx server, from where they will be directed to your latest ip address.
How much does it cost?
The service is provided for free, mostly supported by advertising of some sort on the provider's website. Some charge a minimal fee, like $15 a year. Once you've tried the free service out, and you want more options, you may then consider the pay service. Updaters are also free.
What is the procedure for setting things up?
As I mentioned earlier, there are several organizations that provide this dynamic ip to constant address service. We will take a look at the service provided by http://www.dyns.cx. That is the service I'm using, and they're quite good and have been around a while.
Update: http://www.dyns.cx suddenly vanished in january 2001. So here's what we're gonna do: try the site http://www.dyns.cx. If they're still offline, then click here to setup an account with http://www.dyndns.org/ instead.
Update: http://www.dyns.cx came back online with a new look in April 2001. They've stayed online since.
- To begin, log onto http://www.dyns.cx
- Click on the sign-up button and follow the instructions provided. It asks you for preferred login name. Note that this is just the name you will use to log onto their website each time you visit to update your account. It won't be part of your web address. After submitting the form, details will be sent to your email address about what to do next.
- Check your email and return to http://www.dyns.cx. Login with your new info. Scroll down to Personal Info and click on change button. Change your password to something you can remember more easily.
- Return to the previous page. Now it's time to choose your web address. It will be in the form your_chosen_name.dyns.cx. Let's say you choose name hobby, then your address will be http://hobby.dyns.cx. To choose your name, type it into the form field under Create new dynamic host. Click on create. Moments later, your address will be configured, and you can begin using it immediately.
- Other options provided are: Create new dynamic domain, and Create new URL redirector.
- Create new dynamic domain: this will be useful is you want to run your own name server. This is not beginner stuff, but you can always pick up a book on DNS if you really want to try it. This option will allow you to run your own email server, which means you can provide email accounts for other people. For more info click on (?) in front of the headings.
- Create new URL redirector: this option is very useful when you have an ugly url like http://music.acmecity.com/fractal/149/ftpjazz1.html, and you want a shorter address for it like http://music.dyns.cx. Once the name you choose is set up, people can get to your page using the shorter address.
- When you're done with setting up the name, you will need to download and install an Updater, then set it up to begin updating your dynamic ip address.
An updater will always check your ip address, and compare it with the last ip you had. If there's a difference, it logs onto the dyns.cx server to update the ip. Note that if you have a static ip, you don't need an updater. Just register for the service for people with static ip.
To download the updater,
- log onto http://www.dyns.cx
- from the options on the left, click on software.
- Several updaters are available for download. Download one that will work with your operating system. I currently run my own web and ftp server on windows 98, and the updater I use is JDynsV10.zip. It has worked well for me so far. See the screenshot below
- The updater is easy to setup. After installing it, you will be prompted to restart your computer. Restart, and then run the updater. The default installation folder is C:\Program Files\JDyns.
- What you get when you run it is the screenshot above. Under username, enter your login name for http://www.dyns.cx. Enter the password. Under Host enter just the hostname. Let's say your web address is hobby.dyns.cx, you will enter hobby in the Host field. Click on Save Config. Click on Update Now.
- Look in the white window in the middle, and if the update was successful, you will see the info there.
- The taste of the pudding is in the eating... It's time to see the result of your effort. Go ahead and try to connect to your server using your new address, and if you're able to connect, congratulations, you're done!
- So now instead of giving out your ip address to people, just give them your web address, and anytime you're online and running your server, they can log on using the address.
If you're unable to connect, here are things to try...
- Make sure your server (web, ftp) is running
- Check the info you entered into the updater
- It could be that the dyns.cx server is down. Wait and try again later.
- Return to http://www.dyns.cx, log in and scroll down to Modify your data. Take note of the info there, then check it against the info you entered into the updater.
- If you're still having trouble, then try another updater.
If you like you could add the updater to the startup folder, C:\WINDOWS\Start Menu\Programs\StartUp, so that the program can run automatically each time you restart your computer.
What is the default port?
Assuming your web address is http://hobby.dyns.cx. When someone logs onto http://hobby.dyns.cx, the person gets redirected to your ip address on port 80. If you web server is running on a different port, then your users must include the port number as part of the address, like this http://hobby.dyns.cx:8080. This will direct the person to port 8080.
For ftp, your users will log onto ftp.hobby.dyns.cx. If your ftp server is running on a different port than the defaul port 21, the address will be http://hobby.dyns.cx:portnumber, where portnumber is a numerical value.
What about if you're running your server on a port different from the default, and you don't want your users to have to include the port number in the address?
Say your web address is http://hobby.dyns.cx. This address will only connect to the default port number 80 on your computer. But you have multiple servers running on say port 80, 8000, and 8080. The only way that your users can connect to the servers on ports 8000 and 8080 is if they use these addresses http://hobby.dyns.cx:8000, and http://hobby.dyns.cx:8080 respectively. But you don't want your users to have to type the :8000 and :8080 at the end. So we have to find a way to make http://hobby.dyns.cx:8000, look like http://hobby.dyns.cx.
This is how you do it...
You could do the same for your ftp servers also, but instead of preceding the addresses with http://, you will use ftp://.
- Log onto http://www.dyns.cx and log in
- Under the heading Create new URL redirector, type in a hostname for http://hobby.dyns.cx:8000. For instance, you could use hobby1
- Under URL, enter http://hobby.dyns.cx:8000, and click on create
- What you've done is create a redirect address for http://hobby.dyns.cx:8000. Whenever someone tries to connect to http://hobby1.dyns.cx, they will be redirected to http://hobby.dyns.cx:8000
- Repeat steps 2 and 3 for http://hobby.dyns.cx:8080, by choosing another hostname, eg hobby2. Do the same for all other ports you may be running servers on.
Send me a feedback on this tutorial, so I can improve on it. Use the form below. Thanks.