Teaching

TP 3: Analyse des trames Ethernet

Les objectifs de ce TP sont:

Découvrir, par une étude théorique et pratique, le service et le fonctionnement des protocoles TCP/IP.

Il s'agit de répondre aux différentes questions posées, en justifiant chacune des réponses à l'aide des documents proposés ou de l'expérience réalisée. Le fichier de réponse, que vous devrez m'envoyé par mail à la fin de la séance (sujet = TP3 Internet, nom_fichier= tp3-nom1-nom2.txt),  devra respecté le canevas suivant:

Pour chaque question avec expérience:

Pour chaque question sans expérience:

Documents

Formats des paquets IP (RFC 791), TCP (RFC 793), UDP (RFC 768), ICMP, ...:
Spécifications (RFC) des protocoles TCP/IP sur http://www.ietf.org

Support du cours Internet


Man tcpdump
 

Utilitaires

 
IMPORTANT

Tcpdump est un outil d'observation de réseaux sous UNIX, écrit la première fois en 1987. Il possède toutes les options permettant de filtrer à la guise de l'utilisateur les paquets intéressants. Tcpdump n'est pas restreint au trafic IP: il peut très bien détecter d'autres protocoles. Ceux ci étant, comme son nom l'indique, il a été optimisé pour détecter le trafic IP.

Dans les expérimentations que vous aurez à faire pour répondre aux questions posées, vous ne pourrez utiliser l'utilitaire de capture de trafic tcpdump qu'en tant que super utilisateur (root) sur la machine X (le nom et le mot de passe root de la machine Netlook vous sera fourni en cours de séance).
 


En conséquence, manipulez avec précaution les commandes système disponibles.

Mise en oeuvre des expériences

Pour la réalisation des expériences demandées, vous devrez impérativement respecter la condition suivante :

Les transferts de données devront être effectués entre votre machine (machine i) et la machine i+1

Où i est le numéro de votre machine, la numérotation exacte sera donnée en cours de TP :

Pour ce faire, vous devrez suivre la procédure de connexion suivante :

  1. ouvrir 3 Shell locaux (xterm, cmdtool, ...),
  2. le 1er shell sera utilise localement,
  3. sur le 2nd shell se connecter par telnet (ou rlogin) sur la machine i+1,
  4. et sur le 3ème shell se connecter par telnet sur la machine netlook en tant que root,
  5. réalisez les communications depuis le 1er et le 2nd et visualisez les trames sur le 3ème shell.
Le principe des expérimentations est illustré dans le schéma suivant :

MANIP 1 : Initiation avec les options de Tcpdump

Executez les commandes suivantes sur la machine netlook et expliquez le resultat de chacune d'elles:
  1. tcpdump host clio
  2. tcpdump ip host clio and berne
  3. tcpdump 'icmp[0]!=8 and icmp[0]!=0'

MANIP 2 : Analyse de l'entête Ethernet

  1. Rappeler brièvement la signification des champs d'une trame Ethernet et en particulier le champ "Type"
  2. A l'aide de champs d'une trame Ethernet et des expériences (a determiner) entre machine i et i+1, utilisez tcpdump pour déterminer la valeur du champ "type" (2 octets) pour une trame Ethernet traitant un datagramme IP, puis une trame ARP. Precisez le service untilise pour chaque experience (ping, ftp, ...).
  3. Situez le protocole ARP dans l'architecture TCP/IP.

MANIP  3 : Analyse de l'entête TCP/IP

  1. Faire un telnet entre les machines i et i+1.
  2. Determiner les options de Tcpdump qui permettent de visualiser uniquement les trames generes par le telnet.
  3. Identifier les entêtes IP et TCP dans les hexs. A rappeler que le champ protocole de IP est toujours égale a 4 pour la version actuelle d'IP. Voyez la taille de l'entête qui est mesure dans 32 bits.
  4. Trouvez les adresses IP source et destination dans les données. A rappeler que 8 bits sont l'équivalent de deux hex. Identifier aussi les ports sources et destination dans l'entête TCP.
  5. Trouvez la taille du datagramme IP et la convertir en décimal. A partir de la taille des entêtes IP et TCP et la taille totale de datagrammes IP comme donne dans l'entête IP, calculer la taille de l'espace de données dans le paquet TCP. Retrouvez cette taille dans le fichier de sortie de tcpdump.
  6. Trouvez les données et le caractère que vous tapez.
  7. Expliquez le rôle de chaque paquet TCP/IP envoyé comme conséquence du caractère qui vous avez tape.

  8. Combien des octets sont envoyés dans le réseau comme conséquence du caractère tapé. N'oubliez pas d'inclure l'entête Ethernet visualise avec les options de tcpdump. La taille minimale de paquet Ethernet est de 64, incluant l'entête mais non les données.
     

MANIP 4 : Application de tcpdump

  1. Utilisez les deux applications client-serveur UDP et TCP developpees dans le TP 3 du transport  en utilisant la machine i comme serveur  et la machine i+1 comme client.
  2. Determiner les options de Tcpdump a utiliser pour afficher seulement les paquets generes par chaque application.
  3. Identifier les differents champs des entetes: Ethernet, UDP, TCP, IP.
  4. Identifier les sequences des caracteres tapees au niveau du client et envoyer au serveur.

 
If you have any suggestions, comments, or questions, feel free to e-mail me.