Lab 1 - Command Line Networking Tools

Due: Wednesday January 9, 2007 at 9:30am (right before class begins)

There are several command line tools in Unix/Linux systems that can give you information about certain aspects of TCP/IP networking. This lab will investigate the following tools:

dig
This tool gives you information about DNS (domain name) records. The most simple use of dig is to look up the IP address for a given domain name or vis versa. It can also give you much more information, such as the "start of authority" (soa) or "mail exchanger" (mx) for the domain.

Examples:

dig www.google.com
dig -x 136.168.201.112
dig soa www.cs.csub.edu
See "man dig" for more information.
ping
This tool sends a query to the destination server to see if it is still responding to packets. A response to ping means the destination is online. Ping will tell you how long it took for the packets to travel if there is a response. If there is no response, the server may be offline or just blocking ping requests. See "man ping" for more information.

Usage: ping <IP | domain name>

traceroute
This tool attempts to determine the route taken to the destination machine and how long it takes to travel to each node along the route. It is helpful for determining where network connectivity is lost when one cannot connect to a remote machine or for seeing where lag is occuring when a connection is laggy. See "man traceroute" for more information.

Usage: tracreroute <IP | domain name>

Play around with these tools on Helios. Give different domain names and IP addresses to each one to see what happens. Some users may not have these utilities on their path on Helios. In that case, you will need to type the full paths for each which are: For example, to trace the route to Google you would do:
/usr/sbin/traceroute www.google.com
Try this for both dig and ping as well.

Writeup

Answer the following questions and send the writeup to my Helios account or turn in a hard-copy in class Wednesday. Use only plain text or PDF formats for your writeup; no DOC or rich text (RTF) documents.

Each question is worth 2 points.

  1. Write a paragraph about what happened when you tried using these tools with various domain names and IP addresses as suggested above.
  2. The dig command can be used to obtain information from the DNS records for a given domain name or IP address. What is the output for the following commands and what is the difference between them?
    1. dig www.cs.csub.edu
    2. dig soa www.cs.csub.edu
  3. You are getting probes from some host in the 209.9.244.* (Class C) network. Which of the following commands will find the Start of Authority record for that network and why?
    1. dig soa 224.9.209.in-addr.arpa
    2. dig soa 209.9.224
    3. ping 224.9.209.in-addr.arpa
  4. You are attempting to connect to ftp.foo.com and get the error message
    --- unknown host ftp.foo.com ---
    What is the likely problem and what commands would you use to investigate the problem?
  5. Suppose instead you got the message
    Trying 208.207.151.35 ...
    ... Connection timed out.
    How does this differ from the previous error message? What could be causing the issue? How would you investigate it?