Computer Networks

Tutorial #10

  1. What is the significance of the dot at the end of some domain names?

  2. In the RR examples given in the lecture, the TTL field is set to 86400. What is the significance of this strange number?

  3. What is meant by a "flat name space", and what is the alternative?

  4. The DNS is described as a "distributed database" of RRs.
    1. What does this mean?
    2. What is the alternative, and why is it generally regarded as unworkable? Philosophical question: How does this alternative compare (conceptually) with the emergence of "search engine" sites such as AltaVista for the World Wide Web?

  5. Most implementations of the domain name system allows abbreviations of names so that, for example, the name bindi resolves to a correct address at Bendigo. How is this handled by the nameserver? What about bindi.bendigo?

  6. Why[1] should each nameserver know the IP address of its parent instead of the domain name of its parent?

  7. What is a reverse lookup in the DNS, and why is it regarded as a significantly harder problem than normal lookups?

  8. (Implementation question[2]) The standard suggests that when a program needs to find the domain name associated with an IP address, it should send an inverse query to the local server first and domain in-addr.arpa only if that fails. Why?

Practical Exercises

The nslookup and dig Unix command-line utilities allow humans to look up RRs in the DNS. They work in rather different ways, with nslookup being oriented towards an interactive user interface, whilst dig wants all of its arguments on the command line. However, dig is better in that it shows all of the RRs returned from the DNS, whereas nslookup only gives you the answer to your question. You can also ask dig to return any RRs associated with a particular domain name. Note that there are software tools with similar functionality for both PCs and Macs.

Use these utilities to investigate the DNS. Within nslookup, type h for help and take it from there. Try typing bindi.bendigo.latrobe.edu.au and bindi.bendigo.latrobe.edu.au. (ie, with a trailing dot). Try just bindi on its own, and bindi.bendigo Interesting? Try set query=CNAME, or a few other RR types, then repeat the exercise. Try a PTR lookup - how do each of the utilities handle these? What about an SOA? NB: use exit or ^D to quit from nslookup.


[1] From Comer, Internetworking With TCP/IP, Vol 1, 3/e P404.
[2] ibid.

[Previous Tutorial] [Tutorial Index] [Next Tutorial]
[Suggested Solutions]
Phil Scott