Dr. Mark Humphrys

School of Computing. Dublin City University.

Home      Blog      Teaching      Research      Contact

My big idea: Ancient Brain


CA216      CA249      CA318

CA400      CA651      CA668

7.1 DNS

A global list of sites

Each site could keep a list of all sites on the network (or have access to such a list).
BITNET kept such a list, of thousands of international sites.
ARPANET did this at first, too.

A decentralised list - DNS

DNS - Domain Name System

The Internet has long since grown too big to keep a list of all sites anywhere, let alone have one at each site.

This means sites do not know a priori if an email address or web site name is valid. They must make a query and find out.

You don't clutter up your site with info about other sites, 90 percent of which you will never actually need to know about. You don't have huge amount of Internet traffic being announcements of new sites.


Find out if site exists at run-time

The upside to the DNS run-time query idea is that each subzone of the Internet can develop rapidly, without having to tell everyone else what it is doing.

Say the University of MIT is responsible for all addresses:

It is assigned a segment of the numerical address space, like this (not exactly this):
and can assign and reassign names to this as it likes. It doesn't need permission to add new machines to the Internet, nor does it need to publicise those machines. Other sites find out about these machines if and when they need to (which may be never).

When given the name of a machine:

they talk to the DNS server for .edu, which gives them the name of the DNS server for .mit.edu, which gives them the real address of the site (or says "invalid site").

Each subzone can build and rebuild its own topology as it pleases. Don't even need to report how much of that address space is used.

If a DNS server does not know the answer, it returns the address of a better DNS server to ask.
From here.

DNS so important / done so often that there are duplicate DNS servers, caches of remote information, etc. (without going as far as the complete cache of all sites on the net).

DNS uses UDP (not TCP) for address lookups.

Root nameservers

There are 13 logical root nameservers in the world.
We say "logical" servers because most of them are distributed across multiple machines across the world using anycast routing.

The root nameservers of the world, as at 2006.
13 logical servers, most distributed geographically using anycast.
From here.
There was at that time a single root nameserver in Ireland, run by INEX in Dublin. Part of the J group. A nameserver for .com and .net.

Latest and more detailed map here.
Shows there are now 2 root nameservers in Ireland, in the L and J groups.

DNS Lookup tools

7.1.2 Aliases (1-to-many and many-to-1)

See: "Server" = Single computer or Multiple computers

See Virtualization and Virtual server.


  1. 1-to-many:
    One text address, multiple machines behind it.
    e.g. As server.yourorg.com gets overloaded, you buy a 2nd machine, different IP. Then DNS lookup of the host returns one of these two IPs randomly. Can scale to 3 machines. And so on.
    The mega-sites like "google.com" have hundreds of thousands of servers behind them. A different server handles the request than the first server you connect to.

  2. Many-to-1 (aliases within domain):
    Can set up multiple aliases for same machine ("site.com" = "www.site.com" = "ns.site.com" = "ftp.site.com"), etc.
    Lookup our web server:
    and you find:
    www.computing.dcu.ie = 
    ossa.computing.dcu.ie =
    These are all the same machine.
    See Different forms of URL.

  3. Many-to-1 (different domains):
    Large numbers of different domains can be hosted on a single machine by large hosting companies.
    Modern servers very powerful. Most sites are low-traffic.

    My genealogy website is hosted with a US company. See lookup. The hosting is not cheap or unusual. Just a normal hosting service.
    My site gets healthy (I thought) traffic of around 100,000 to 150,000 page views per month. And yet I was startled to discover that it is sharing the same IP address with 762 other sites.
    The fact is that modern servers are incredibly powerful. It works fine.
    Lookup from here.

    The note about "adult" sites indicates a few things about modern hosting:

    • If "adult" content is legal, the hosting service may well have customers with such content. This could easily be on the same IP as your site.
    • If web filtering software filters by IP, it may block many legitimate sites.
    • The hosting company could never police all its content, "adult" or not. No one could run a hosting service that had to police content.
    • Which is not to say that hosting services don't respond to specific requests from police/courts about illegal content. They do. But they cannot police content in advance. The numbers are too big.

  4. Both 1-to-many and many-to-1:
    Can have a hybrid of the above:
    www.domain could map to multiple IPs (for load balancing)
    and each of those IPs could map to multiple hostnames (IPs are running other services)

  5. Multiple IPs map to same machine:
    As well as multiple domains mapping to same IP address and same machine, multiple IP addresses can map to same machine.
    There are various reasons to do this.

Feeds      w2mind.org      ancientbrain.com

On the Internet since 1987.