[Previous entry: "IP law and printer cartridges"] [Main Index] [Next entry: "SpamAssassin"]
12/12/2004 Archived Entry: "Domain Name Servers"
In Friday's blog entry I blathered on a bit about how we had to change our domain name registration to move our web site to a new server. It wasn't that long ago that this was a mystery to me, so perhaps a quick explanation will be useful to others setting up web pages. If you already understand DNS, feel free to skip this post.
Some time back I posted about IP addresses, and how these are the "phone numbers" of the Internet. When you want to find a web site by name -- like "zetetics.com" -- you have to go to the Internet's equivalent of directory assistance. These are the Domain Name Servers ("DNS") and their job is to convert names (like zetetics.com) to numbers (like 192.168.123.45).
It's not done by just one computer; it couldn't possibly handle the load, and one failure would kill the entire Internet. Instead there's a hierarchy. If you're interested in the gritty details of Domain Name Servers, here's an easy-to-understand explanation. I'll attempt an abridged summary:
Suppose you want to visit zetetics.com. Your computer asks your Internet Service Provider's DNS where to find it. Your ISP's DNS doesn't know, but it knows who to ask: one of the "root name servers". The root server doesn't know, but it knows who to ask for all ".com" information, so it passes the request on to that computer (the "top level domain" name server). The TLD server doesn't know where zetetics.com is, but it does know who to ask about "zetetics.com," so it passes the request on one more step: to the name server at our web host. That computer knows the IP address of zetetics.com.
To force an analogy from the old telphone days, before direct dialing: you want to call Joe Shlabotnik in Dublin, Ireland. You call your local operator. She can't handle that, so she brings in the long-distance operator. The long-distance operator calls the international operator, who in turn knows how to reach diretory assistance for Dublin. The difference is, the phone company worked from the local level up; the Internet works from the top level down....as if you placed your original request to a "world" telephone operator, who then calls country, who then calls city.
Why this is all important: to move your web site to a new server, several steps are involved.
First, you have to tell your new hosting service what domain name you'll use. This is so they can add that name to their name server, along with the IP address they assign to your web site. (Actually they're required to have two independent name servers, for redundancy.)
Second, your hosting service has to tell you the names of their name server computers. You need this information for step #3.
Third, you have to contact your domain name registrar and tell them which name servers know about your site. (This is what you learned in step #2.) The registrar does not provide your web space. It does only two things: (a) sell you a domain name, registering it as "used" so no one else can buy it, and (b) send your name server information to the appropriate TLD servers. Remember them? They're the computers that handle all the requests for ".com" (or ".org" or ".info" or whatever Top Level Domain you've chosen).
When you move your site from one web hosting service to another, you don't tell the registrar a new IP address, or even the name of the new hosting company. You tell the registrar the name of the new hosting company's name servers. From this information, the Internet learns where your site has moved.
After step #3 it takes some time for this information to be passed around the Internet. This is because at each level, there are several computers in different places providing the information; also, they like to "cache" this information (remember it for a while) so they don't have to keep asking other computers every time. During this transition period, it's possible that one person seeking "zetetics.com" will get the new information, and another will get the old information (i.e., will be directed to the "old" web hosting service). In the past this could take a few days; now it seems to get accomplished in less than a day.
It's possible for the same company to sell domain names and provide web hosting. In which case, all you need to do is buy the domain name and hosting space, and they can handle steps 1, 2, and 3 for you. If you're intimidated by all this DNS stuff, that's probably the best solution. But you're never required to do that, and as I learned with our recent problems, there are advantages to having your domain registration separate from your web hosting.