Ethereal Lab: DNS
Version: 1.0
© 2005 J.F. Kurose, K.W. Ross. All Rights Reserved
Computer Networking: A Top-
down Approach Featuring the
Internet, 3
rd
edition
.
As described in Section 2.5 of the textbook, the Domain Name System (DNS) translates
hostnames to IP addresses, fulfilling a critical role in the Internet infrastructure. In this
lab, we’ll take a closer look at the client side of DNS. Recall that the client’s role in the
DNS is relatively simple – a client sends a
query
to its local DNS server, and receives a
response
back.
As shown in Figures 2.26 and 2.18 in the textbook, much can go on
“under the covers,” invisible to the DNS clients, as the hierarchical DNS servers
communicate with each other to either recursively or iteratively resolve the client’s DNS
query.
From the DNS client’s standpoint, however, the protocol is quite simple – a query
is formulated to the local DNS server and a response is received from that server.
Before beginning this lab, you’ll probably want to review DNS by reading Section 2.5 of
the text.
In particular, you may want to review the material on
local DNS servers
,
DNS
caching
,
DNS records and messages
, and the
TYPE field
in the DNS record.
1. nslookup
In this lab, we’ll make extensive use of the
nslookup
tool, which is available in most
Linux/Unix and Microsoft platforms today. To run
nslookup
in Linux/Unix, you just type
the
nslookup
command on the command line. To run it in Windows, open the Command
Prompt and run
nslookup
on the command line.
In it is most basic operation,
nslookup
tool allows the host running the tool to query any
specified DNS server for a DNS record. The queried DNS server can be a root DNS
server, a top-level-domain DNS server, an authoritative DNS server, or an intermediate
DNS server (see the textbook for definitions of these terms). To accomplish this task,
nslookup
sends a DNS query to the specified DNS server, receives a DNS reply from that
same DNS server, and displays the result.
