BUILDIND THE INTERNET

Local Area Network (LAN)


In this first group exercise you will build a local area network with the computers in your group, and try to access a web and FTP server, as well as ping others in your network and analyzed packet contents. The objective of this group exercise is to put in practice the concepts learn in class about protocols and network configuration. We will continue expanding this exercise in the future.



The Setup

To begin, write down the network address of your group and distribute it to each of your members accordingly:

  • Group #1: 10.0.10.0/24
  • Group #2: 10.0.20.0/24
  • Group #3: 10.0.30.0/24
  • Group #4: 10.0.40.0/24
  • Group #5: 10.0.50.0/24

To facilitate the process of accessing member's resources within the network, each NIC (network interface card) should have an IP address that goes in increments of ones, that is, if you are in network 10.0.60.0/24, the second address should be the router's (10.0.60.1), Member 1 should have 10.0.60.2, Member 2 will have 10.0.60.3, 10.0.60.4 for Member 3 and 10.0.60.5 should be assigned to Member 4.

These are the materials your group will need:

  • 1 Link-Layer switch
  • 4 laptop/tablets
  • 4 Ethernet adapters/cards (if your computers comes with one, no need for external adapter).
  • 4 Ethernet cables



Before Starting

  • Assign a role to each member of the group so that each of you can perform the following tasks:
    • Member 1: Run a web server in your computer (select this member based on having a web server already installed in their computers or if they can install one quickly enough).
    • Member 2: Run WireShark and collect information about requesting a webpage from Member 1's web server. Run FTP client (FileZilla Client) and connect to Member 4's file server.
    • Member 3: Run WireShark and collect information about network set up protocols like ARP. This member will ping all the other group member's IP addresses and capture packages to be analyzed. This member will be the last to join the network.
    • Member 4: Run FTP server. (FileZilla Server) For configuration help, go here
  • Member 1 should have a web server running in their computer with a simple index.html page (download one here).
  • Member 4: should have an FTP server running. Download, install, and configure one from here). Once the server is installed create a user/password for the client that will connect to the FTP server.
  • Remember to turn off WiFi completely (either disconnecting from the network or turning off the wifi adapter)
  • For Windows user: Make sure to deactivate your firewall while working on this exercise.
  • Some applications in your computer would like to use the network to communicate (like Dropbox, or another app that requires a connection to the Internet to work). This is OK, but you might want to turn them off before starting to capture packages.



Let's Begin

Make sure that all the requirements of the "Before Starting" section are completed. Please follow the instruction below in the order written for a better experience. Read everything first.

Every member should start by configuring their NIC accordingly (leaving the second address 10.0.x.1 for the router or gateway). Do not connect to the switch yet. Make sure you have your IP address, subnet mask, and router/gateway well typed. Verify your team member's info as well, making sure they also have a good configuration.

Member 1: start your web server, making sure you are able to access it by typing your IP in the URL bar of your browser of choice. After you know the server is running, plug your Ethernet cable to the switch.

Member 4: start your FileZilla Server application. Plug your Ethernet cable to the switch. Try to ping Member 1 to see if your configuration is OK. Member 1 should ping Member 4 at this moment.

Member 2: plug your Ethernet cable to the switch. Ping Member 1 and Member 4 to check if your configuration is OK. Open your browser of choice. Start WireShark packet capture on your active Ethernet interface. On your browser, type the IP address of Member 1 (member with web server). You should see the webpage (index.html if you used the one provided in this page). Stop packet capture and save it (name it http_capture_group7, for example). Open your FileZilla client. Start a new WireShark packet capture. In your FileZilla client "quickconnect" to the FTP server setup by Member 4; Host: Member 4 IP address, Username: the one created by Member 4, Password: the one created by Member 4, Port: leave it empty. Click "quickconnect". There are going to be some questions asked about certificates and such, accept them. Once a successful connection is obtained (you might have some errors, but you'll be logged in correctly), stop WireShark and save the packet capture (name it ftp_capture_group7, for example).

Member 3: Start a packet capture with WireShark before plugging in the Ethernet cable to the switch. Once you are capturing packets, plug the Ethernet cable to the switch (you should see several packets ARPs and such, being display in WireShark). After a while (a minute or so), stop WireShark capture and save the capture with a name like arp_capture_group7, for example. Start a new packet capture. Open your terminal (macOS) or command prompt (Windows) and ping all of the members IP addresses (stop the ping command after at least 5 packets have been send properly. ctrl+c will stop the execution). Once you’ve ping all the members, stop WireShark and save the capture as icmp_capture_group7 for example.

Once you are done with these main steps, you can play around with other tests that my spark your curiosity.



What to Submit

Prepare a 2 to 3 pages long report (one per group) addressing the group experience building a LAN and accessing a web and file server, as well as performing pings to the different hosts in the networks. The report should be divided into two sections: section 1 should be a reflection of the process that the group underwent while building the network and how the concepts and exercises from the class helped with building a functioning LAN. Section 2 will try to answer the following questions:

  • Choose a packet trace with the ARP protocol (these are packets captured by Member 3). Find the ARP packet request that has the line (in the "Info" column): Who has 10.0.x.3? Tell..., where x is the number that belongs to your group (either 10, 20, 30, 40, or 50). Find the ARP packet reply. Does it match the MAC and IP address of that member?
  • Choose a request packet with the ICMP protocol obtained from the ping operations made by Member 3. Describe the contents of the IP protocol used in the communication (version, header length, total length of the datagram, time-to-live, protocol, source and destination addresses). Describe the type and code of ICMP request. Find the ICMP reply for this request. What's the meaning of the type and code? Read more about the ICMP protocol here
  • Choose the request and reply HTTP packet captured by Member 2's request to the web server. Describe the contents of these packets, including the Ethernet, IP, and TCP protocol portions (making sure the information in these protocols' source and destination MAC and IP addresses as well as TCP ports are correct and the one you expect). Talk about the three-way handshake made by TCP before sending the HTTP request. Note: there might be several HTTP requests/replies in your packet capture, if so, discuss why.
  • Choose the FTP packets capture by Member 2. You might want to filter them in Wireshark. Because you only made a connection attempt, talk about the structure of the FTP packets (including the Ethernet, IP, and TCP protocol portions, making sure the information in these protocols' source and destination MAC and IP addresses as well as TCP ports are correct and the one you expect). Was there a three-way handshake to establish the connection to the FTP server?



Evaluation

Your report will be graded on the following scale:

  • Exceeds Expectations 5pts.
  • Meets Expectations 4pts. (A)
  • Near Expectations 3pts. (B)
  • Below Expectations 2pts. (C)
  • Poor Effort 1pt. (D)
  • Not Done 0pts. (F)