TP n°4 première partie : Tour d'horizon de protocoles associés à IPv4

Durée : 2h

Compte rendu individuel

Vous devez obligatoirement déposer un compte rendu illustré individuel pour chaque TP au format TPi.[pdf|odt|docx] sur Moodle.

Vous pouvez compléter vos TP après une séance en déposant un nouveau fichier TPiv2.[pdf|odt|docx].

Présentation

Durant cette séance vous allez réaliser un tour d'horizon des protocoles associés à IP dans le modèle TCP/IP.

Vous allez notamment étudier leurs encapsulations, et devrez décrire les bases de leurs fonctionnements.

Vous ferez une analyse fine des trames liées à une obtention d'adresse IP via le protocole DHCP et une requête DNS.

Objectifs

Environnement de travail

Encapsulations

Vous allez commencer par bien noter (et retenir) l'encapsulation des protocoles importants suivants associés à IP.

Lancez une commande ou une opération permettant de répondre à chacune de ces questions :

  1. Quelle est l'encapsulation sous Ethernet du protocole ARP ?
  2. Quelle est l'encapsulation sous Ethernet du protocole ICMP ?
  3. Quelle est l'encapsulation sous Ethernet du protocole DNS ?
  4. Quelle est l'encapsulation sous Ethernet du protocole DHCP ?
  5. Quelle est l'encapsulation sous Ethernet du protocole HTTP ?
  6. Quelle est l'encapsulation sous Ethernet du protocole SSH ?
  7. Quelle est l'encapsulation sous Ethernet du protocole FTP ?

ARP, ICMP : revoir au besoin le TP n°1.

DNS : La commande nslookup permet d'interroger directement vos serveurs DNS.

DHCP : La commande dhclient -r permet de libérer votre adresse IP pour qu'un serveur DHCP vous en redonne une.

HTTP : ouvrir par exemple une page web depuis un navigateur.

SSH : commande ssh login@machine

FTP : commande ftp iut-rt par exemple. Loguez vous uniquement avec le compte guest00.

Informations sur le Filtrage dans Wireshark

Deux modes de filtrage sont possibles dans Wireshark : les filtres de capture où seuls les paquets capturés vérifiant la ou les condition(s) du filtre sont gardés, et les filtres d'affichage utilisés pour rechercher à l'intérieur des données capturées.

Les filtres d'affichage sont plus expressifs. Il est possible d'utiliser les opérateurs "==", "!=", ">", ... pour comparer les valeurs de champs. Les expressions ainsi fabriquées peuvent être combinées avec les opérateurs "&&" (ou "and"), "||" (ou "or"), "^^" (ou "xor" pour le "ou exclusif") et "!" ou "not" pour la négation. Pour trouver les bons filtres, l'aide contextuelle après le clic sur le bouton Expression... est très bien faite.

Vous allez maintenant analyser finement les trames issues de l'octroi d'une adresse IP par DHCP, puis d'une requête DNS.

En quoi consiste une analyse fine de trames ?

Lorsqu'il vous est posé la question de réaliser une analyse fine de trame, vous devez :

  1. dessiner l'encapsulation de chaque trame
    • Par exemple pour HTTP il faudra dessiner l'encapsulation suivante :
    Encapsulation HTTP
  2. écrire des commentaires sur cette encapsulation et sur les valeurs des différents champs :
    • Quels sont les adresses employées (adresses MAC, IP, numéros de ports) ?
    • Longueurs des en-têtes et des données ? Quelles options sont présentes ?
    • Si la couche transport est concernée, pourquoi TCP est-il employé plutôt qu'UDP ou inversement ?
    • Ajout d'informations par rapport à ce qui a été mentionné dans le cours.
  3. expliquer l'enchaînement des trames. À quoi sert chaque trame ?

En résumé une analyse de trame doit comprendre : le dessin de l'encapsulation, des commentaires sur la valeur des champs des trames et une explication de l'enchaînement des trames.

Vous noterez bien aussi le filtre Wireshark employé pour obtenir vos trames, et la procédure ou commande employée pour créer ses trames.

Analyse fine de trames DHCP

  1. Capturez les trames, et uniquement celles-ci, issues d'une demande d'obtention d'adresse IP par le protocole DHCP. Combien de trames avez-vous capturées ? Quel filtre wireshark avez-vous employé pour obtenir uniquement ces trames ? Réaliser une analyse fine de cet échange.

Pour obtenir les 4 trames vues en cours : DHCP Discover, DHCP Offer, DHCP Request, DHCP ACK, vous devez dans un premier temps explicitement relâcher votre adresse ip avec la commande suivante dhclient -r

Puis vous relancer votre client dhcp avec la commande dhclient, les 4 trames attendues s'afficheront alors dans votre wireshark.

Pour cette analyse, le filtre d'affichage permettant de visualiser uniquement les trames est bootp.dhcp and eth.addr==<votre-adresse-mac>

Analyse fine de requêtes DNS

  1. Réalisez une analyse fine de demande de résolution du nom iut-rt (Résolution direct)
  2. Réalisez une analyse fine de demande de résolution de l'adresse IP 172.31.25.9 (Résolution indirecte)

Si vous n'êtes pas à l'IUT pour faire ce TP, remplacez iut-rt par cache-etu.univ-artois.fr (votre proxy) et 172.31.25.9 par 193.49.62.52.

Rappelons que sous Linux, les serveurs DNS se trouvent mentionnés dans le fichier /etc/resolv.conf.

Notez bien le nombre de trames capturées pour chaque résolution.

Pourquoi DNS utilise-t-il UDP ?

Synthèse

Protocole Signification acronyme Couche où il intervient - modèle OSI ou TCP/IP Fonction - À quoi sert-il ?
ARP
ICMP
TCP
UDP
DHCP
DNS
HTTP
FTP
SSH