Due (Problem Set): Tuesday, October 4, 2016, 11:59 pm

Due (Programming Assignment): Tuesday, October 11, 2016, 11:59 pm



  1. Answer the following questions:
    1. What is the range of IP addresses covered by prefix
    2. Give the prefix(es) to cover the IP addresses in range -
    3. What is the netmask that corresponds to /21 prefix length?
    4. What prefix length corresponds to netmask
  2. Assume a router with four interfaces (A, B, C, and D) and routing table that contains four entries (prefix, interface): (, A), (, B), (, C), and (, D). For each of the following destination addresses indicate all matching routing table entries and the interface to which it is going to be routed.
  3. Using command line tools, find:
    1. IP address, hostname, subnet id, prefix and subnet mask,
    2. content of the routing table and the default gateway, and
    3. content of the ARP table
    of the host that you are connected to. Repeat this on a different platform, preferably a smartphone or a tablet. You may have to get a (free) app to find the information. Some information may not be accessible at all.
  4. In this part of the project, you will analyze a short network traffic trace. You can download the trace from here and open it by any of the standard network traffic sniffers, such as Wireshark or the standard command-line utility tcpdump.

    Examine the trace and answer the following questions:

    1. What is the activity captured by the trace? Describe broadly what is going on in the trace.
    2. What command-line command triggered the traffic captured the trace?
    3. What was the hostname of the target of the command?
    4. Can you find the hostname of the node where the command was executed?
    5. What information from the trace does Wireshark use to determine the manufacturers of the network interfaces? Can you find an online resource that would confirm that the information is correct?

Programming assignment:

The purpose of this part of the assignment is to learn and practice the basic calculation used to calculate IPv4 subnets.

Write a simple program that takes an IPv4 address and a prefix length and calculates:

  1. The subnet address
  2. The address of the first host on the network
  3. The address of the last host on the network
  4. The subnet broadcast address
  5. The subnet mask

The program should perform basic error checking on the user input (e.g., values out of range). The IP address can be entered as a whole or as 4 values for each of its bytes. A run of your program may look like this (bold font indicates user input):

 Enter IP address:
 Enter prefix length: 24

 Subnet address:
 First host:
 Last host:
 Broadcast address:
 Subbet mask:

Your are allowed to use any programming language, platform, and development environment. However, keep in mind that the next assignment will ask you to implement the same calculation as a web service.


  1. Use a different approach to implement the programming assignment.
  2. Create a filter on Wireshark (e.g. capture the network traffic for opening a website).
  3. Do some interesting experiments with Wireshark. Explain the purposes of your experiments, the experiment setup, and your findings.


Please follow the submission instructions to turn in your work.

© 2016 Ying Li. Page last modified: .