TP4 : Visualisation de trames


Mise en situation
Le travail de ce TP se déroule binome.
Temps alloué : 4h
Le TP se fait sur PC, la distribution de Linux est Mandriva 2008 Spring
|
Objectif
C6.3 Relever les performances d’un réseau.
C6.4 Corriger des dysfonctionnements observés sur le réseau.
|
Pré requis
Commandes de base Linux, configuration carte réseau.
|
Travail demandé
Suivre le déroulement du TP. Compte rendu écrit.
|
Critères d’évaluation
Réponses aux questions. Autonomie de travail.
|
1. Paramètres réseau
1.1. ethool
1.2. ifconfig
1.3. arp
1.4. icmp
1.5. traceroute
1.6. arp
2. Analyse TCP/UDP à travers la couche application
2.1. UDP
2.2. TCP
2.3. Telnet
1. Paramètres réseau
1.1
La commande
ethtool permet de visualiser ou de changer les paramètres d’une carte éthernet. Dans les systèmes Linux, les interfaces réseaux sont nommées de la façon suivante : le type de l’interface plus un numéro 0, 1, 2. Ainsi l’interface eth0 est la première interface de type Ethernet.
- Quel est le type de réseau utilisé?
- Quelle est la vitesse de transmission?
- Quel est le mode/sens de transmission?
1.2.
La commande
ifconfig permet de visualiser ou de changer les paramètres TCP/IP d’une interface réseau.
- Quelle est l’adresse éthernet de votre carte réseau?
- Quelle est l’adresse IP de votre machine?
- Quelle est l’adresse du réseau?
- Quelle est le masque du réseau?
- Quelle est la classe du réseau?
1.3.
Le protocole
ARP (Adress Résolution Prorocol) permet de faire la correspondance entre l’adresse IP et l’adresse Mac.
- Affichez le contenu de la table ARP avec la commande arp.
- Regardez l’aide de cette commande.
- Affichez le contenu de la table arp avec les adresses IP au lieu des noms des machines.
- Lancez la commande ping http://www.lycee-pascal-colmar.net/
- Affichez de nouveau le contenu de la table ARP. Que constate-t-on?
1.4.
Le protocole
ICMP (Internet Control Message Protocol) permet de gérer des problèmes au niveau de la couche IP en fournissant des message de contrôle pour indiquer les erreurs pendant la transmission du datagramme IP.
Un logiciel (wireshark) permet d’analyser les trames circulant sur le réseau.
- A partir de
Wireshark (all releases of Ethereal.), installer Wireshark.
- A partir de "Installer et désinstaller des logiciels", finir l’installation.
- Dans Capture/Option, remplissez les champs :
- Interface
- Capture Filter (ip proto icmp and host POSTEX)
- Enable network name resolution
- Démarrez la capture
- Dans une fenêtre de terminal, lancez la commande ping www.google.fr pendant quelques secondes.
- Cliquez sur Stop

L’interface de Wireshark regroupe plusieurs zones :
- Zone 1 : Contient la liste des paquets capturés disponibles avec un affichage synthétique du contenu de chaque paquet.
- Zone 2 : Contient le décodage exact du paquet actuellement sélectionné dans la liste. Ce décodage permet de visualiser les champs des entêtes des protocoles ainsi que l’imbrication des différentes couches de protocoles.
- Zone 3 : Contient le paquet affiché en héxa et ASCII
- Analysez les trames :
- Quelle est l’adresse MAC de l’interface réseau du serveur google?
- Quelle est la taille d’un paquet en octets?
- Quelles sont les adresses IP source et destination?
- Quels sont les deux types de contrôle ICMP utilisés?
1.5.
Analyse de la commande
traceroute
- Dans Wireshark, utilisez le filtre de capture :
ip proto icmp or ip proto udp and host POSTEX (and host POSTEX optionnel)
- Dans un fenêtre terminal, lancez la commande traceroute www.google.fr
- Stoppez la capture et expliquez le fonctionnement (succinct) de la commande traceroute en analysant les trames capturées et en les comparant avec le résultat de traceroute.
1.6.
Analyse du protocole
ARP
- Dans Wireshark, utilisez le filtre de capture :
ether proto arp
- Dans un terminal, affichez la table ARP
- Pinguez sur une machine du réseau qui n’est pas encore dans la table ARP.
- Analysez les deux trames échangées.
2. Analyse TCP/UDP à travers la couche application
Rappel :
Plusieurs applications peuvent s’exécuter sur une machine cliente ou une machine serveur. Chacune d’entre elles utilise les services de la couche transport UDP ou TCP et est identifiée par un numéro de port (ex : SMTP port 25, HTTP port 80...). Un service est souvent connu par un nom (ftp, domain…). Sous Linux, la correspondance entre nom et numéro de port est donnée par le fichier
/etc/services
2.1.
Analyse d’
UDP à travers le protocole DNS(Domain Name System)
Le service DNS permet d’utiliser les noms symboliques pour accéder aux hôtes au lieu de leurs adresse IP. Il s’agit d’une sorte d’annuaire fonctionnant sur le principe requête/réponse et s’appuyant sur le protocole UDP. Le service écoute les requêtes des clients sur le port 53.
- Sous wireshark, capturez les paquets UDP correspondant à une requête/réponse DNS en utilisant le filtre :
- ip proto udp and port domain
- en décochant Enable network name résolution
- Dans un terminal, lancez la commande :
host A143-P02.pedago.local
rem : A143-... est un ex de nom de votre poste.
- Etudiez les différents champs de l’entête UDP
- Etudiez les requêtes et réponses DNS encapsulées :
- Quelle est l’adresse IP du destinataire?
- Qui a répondu ?Qui aurait pu répondre?
2.2
Analyse de
TCP à travers le protocole HTTP (HyperText Transfer Protocol)
Le protocole http est utilisé pour le transfert de fichiers (essentiellement au format HTML) localisé grâce à une chaîne de caractères URL entre le navigateur (le client) et un serveur web. Il s’appuie sur le protocole TCP. Le serveur écoute les requêtes des clients sur le port 80.
- Sous wireshark, capturez les paquets TCP échangés dans un dialogue http en utilisant le filtre :
ip proto tcp and port http
- Lancez la capture et dans un navigateur, tapez l’URL :
http://www.google.fr
- Analyser les segments correspondants à la poignée de main en regardant les valeurs des bits SYN,ACK
- Décodez l’ensemble du dialogue http entre votre navigateur et le serveur Web en cliquant sur la première trame capturée puis en sélectionnant le menu Analyse/Follow TCP Stream
2.3.
Analyse de TCP à travers le protocole
telnet (Terminal NETwork émulation)
Telnet est utilisé pour émuler une connexion de terminal à un hôte distant. Il utilise TCP comme protocole de transport afin de transmettre les données entre d’un côté le clavier et l’écran de l’utilisateur et de l’autre, l’hôte distant. Le serveur écoute sur le port 23
- Sous wireshark, capturez les paquets TCP échangés dans un dialogue telnet lorsque vous vous connectez à un serveur distant. Ici, nous prendrons comme exemple le kit Acturus muni d’une carte ColdFire d’IP 10.15.255.N°Carte (login : toto, passwd : uClinux). Filtre utilisé :
ip proto cp and port telnet
- Lancez la capture et dans un terminal, tapez la commande :
telnet 10.15.255.5
- Entrez le login et le mot de passe.
- Décodez l’ensemble du dialogue telnet entre votre poste et la carte en cliquant sur la première trame capturée puis en sélectionnant Analyse/Follow TCP Stream.
Que constatez-vous ?
Remarques : pour sécuriser la connexion (ex pour les mails) différents protocoles sont utilisés du genre : ssh, https...

