CentraleSupélecDépartement informatique
Plateau de Moulon
3 rue Joliot-Curie
F-91192 Gif-sur-Yvette cedex
1CC1000 - Information Systems and Programming - Lab: Computer networks

Table of contents

1. Internet from our perspective

The ifconfig command that you can type in a terminal returns the network interfaces available on your machine. You might have several. Interfaces denoted loX (where X is an integer) correspond to the so-called loopback interfaces, in particular the 127.0.0.1.

You should also have enX (on OSX) or ethX (on Windows) interfaces for ethernet interfaces. This can correspond to wired or wifi interfaces.

Identify the primary IP address of your machine. You can find this information in the system preferences.

 

The ping command allows you to send a request to a server to find out if it is online. The command also returns the "round-trip time" (RTT), that is the time that a message takes to travel from your machine to the server, and the response to travel back to your machine. Some servers may not respond to ping requests for security reasons.

Ping the following servers, what conclusions can you draw about the RTT?

  • paris-saclay.fr
  • www.mcgill.ca
  • web.aiu.ac.jp

 

Repeat the same experiment with the following servers. What can we conclude?

  • google.fr
  • google.ca
  • google.jp

 

The traceroute command allows you to determine the routes followed by a ping request to reach a remote server. Some intermediate servers may not respond. Test the command on the following servers:

  • paris-saclay.fr
  • www.mcgill.ca
  • web.aiu.ac.jp

Then for the following destinations.

  • google.fr
  • google.ca
  • google.jp

 

2. Routing

We consider the following network and its routing tables.

What are the round-trip paths followed by the packets of a ping from A to G?

 

What are the round-trip paths followed by the packets of a ping from G to C?

 

Where is the configuration error? How do you solve it?

 

3. Ethernet and IP

We are interested in the following network configuration. A home network is connected to the Internet using the residential gateway of an Internet provider.

The local computer, with the address 192.168.0.2 sends a message to a computer with the following address : 8.1.3.8. Which protocols are used in the local network?

 

Describe a typical frame sent by the local computer to the residential gateway. In particular, describe its structure and the main information in the Ethernet and IP header.

 

Suppose now that 8.1.3.8 is a web server. The local computer sends a request to get the page "index.html". What are the involved protocols? Complete the frame given in the previous exercise.

 

The frame that you previously described reaches the gateway. The gateway modifies it before forwarding over the Internet. What are the modifications?

 

The server receives the GET request, then sends back the HTML code of the web page. Describe the frame.

 

When the response reaches the gateway, it is forwarded to the destination computer. What modification to the response are made by the gateway?

 

4. NAT -- Network address translation

 

We suppose now that the networks are a little more complex.


Why is it possible for two computers to share the same IP address: 192.168.0.2?

 

In the home network 1, we have different computers. Any of them can send a message to the server. With the previous strategy (replacing the local IP by the external IP of the gateway), there is a problem when the gateway receives a response from the server. The gateway doesn't know to which local computer the message is supposed to be forwarded.

Can we imagine a solution deployed on the residential gateway using the notion of ports to solve this problem?

 

5. Services (Firewall, proxy, DNS)

What is a firewall? In which points of our network can we find firewalls? How are they configured?

 

What is a proxy? Why is it used in combination with a firewall?

 

What is DNS (Domain Name System)? Describe the protocols that are used with DNS.

 

Modify the diagram of this exercise to show the different components that we have just seen (NAT, firewall, proxy and DNS).

What is the sequence of messages that are necessary for a Web browser to get the page http://www.example.fr/index.html stored at the server with IP address 8.1.3.8?

 

6. Wireshark

Demonstration of Ping, Traceroute and Wireshark. Observe the frames, the encapsulation, the order of the requests and especially the TCP session and the acknowledgment of messages.

If your teacher does not have the time for this demonstration, this video (in french...) explain everything. Wireshark.mp4