DNS Basics

Discussion in 'Server Operation' started by BasicA, Sep 29, 2006.

  1. BasicA

    BasicA New Member

    I read Falko's linux set up tutorials on howtoforge and they were really
    nicely and completely written and I am pretty impressed. I appreciate
    the effort.

    Actually I have a question about DNS... I understand that Bind9 is the
    utility used for setting up name servers on a linux machine. I do
    know, also, that the DNS server nsX.mydomain.com has to be so called
    registered with the registrar of the TLD, mydomain.com. Other aspects
    that I am aware of the need to modify apache webserver settings for
    host as well as DHCP settings, Bind9 settings, etc... I gather that
    DNS takes times to propagate through the DNS servers before your TLD
    is actually recognized on the WWW. I also read from your tutorial that
    ISPConfig would be a good tool to use to manage DNS configurations.

    I am actually rather confused about the many issues revolving about
    DNS and I was just wondering if anyone would be able to give me something like a flow explanation for DNS issues from the start when a user possess a
    linux server and a dotcom domain name to it becoming "glued" and
    officially accessible on the WWW. It would be great it anyone could
    explain the big picture to me and then refer me some links to
    understand each and every of the smaller bits...

    Many of the web resources I have looked up provides bits and pieces of the information here and there and do not link up the entire picture... :)

    Many thanks,

    BTW: I am running a FC5 LAMP server and VMWare loaded with Ubuntu 6.06
    Dapper Drake Server edition. Once I have grasped Ubuntu and the DNS
    issue I am planning to set up a server to run on Ubuntu and attach it
    to a dotcom domain.

    I really appreciate your time and patience... and I do thank you in
    advance for helping me clear some doubts. :) Many of the web resources
    I have looked up provides bits and pieces of the information here and
    there and do not link up the entire picture... :)
  2. sjau

    sjau Local Meanie Moderator

    Might be a bit wrong but I think it works like this:

    Registring the domain
    You register a domain at some registrar. They do have some kind of contracts with the operators of the root servers. For .com domains that's NetSol.
    So, basically when you register a domain name you also need to enter the nameservers. E.g. mydomain.com uses as nameservers ns1.myhost.com / ns2.myhost.com.
    If the nameservers of ns1/ns2.myhost.com don't exist, then glue records are needed. This means that the owner of myhost.com tells the registrar that it's a glue records and that those nameservers can be found on specific IP addresses. E.g. and (normally two different IPs are required for the two different nameservers)
    All of this information is then added to the root server.

    Making a dns request
    Now in your browser you want to surf to mydomain.com. If the domain is also in your dns cache, then first it will check whether the information has expired (most domains are set to about 48h... after that the information will be renewed again by checking on the domain info). If it has not expired then the IP of the actual server where the domain will point to will be retrieved from the cache and you will be directed there.
    At this point apache (or another webserver or ftp server or ....) comes into play. Apache on the server gets a call for the domain "mydomain.com". It checks its configuration whether it has an entry and if so, then it will display the according pages. If not you get an error.

    However if the domain info has expired in your cache or if there is no information yet in your cache your computer asks then (normally) your ISPs dns server whether this one has temporarily saved the domain info. If not then it will go up the ladder (I don't know how many steps there are) until you arrive at the root server. If the domain exists then the root server will have an entry and all ladders in between will put the info into the cache... so that not for every request the root server are being queried.

    At least I think it works like that... or closely like that.
  3. falko

    falko Super Moderator ISPConfig Developer

Share This Page