Réseaux locaux

TP2 – Commandes et outils de base
pour le réseau

Objectifs




Savoir consulter les paramètres IP d’un PC sous Linux (commandes ifconfig, route, ip)
Découvrir les commandes principales de diagnostic réseau (ping, traceroute, whois, nslookup, host, dig)
Découvrir les fichiers essentiels de configuration réseau sous Linux
Apprendre à utiliser un analyseur de trames

Pré-requis
 Le modèle TCP/IP et les fonctions basiques de ses principaux protocoles
 Principes de l'adressage et du routage IPv4

Matériel et logiciel utilisés
 Une station sous Linux
 Le logiciel Wireshark

Nombre de séances : 2 (4 heures)
Vous serez connecté en root pendant toute la séance.
1. Consultation des paramètres IP
Vous allez étudier les commandes permettant de consulter et de configurer les paramètres IP d'une machine sous
Linux. Jusqu'à la version 2.2 du noyau Linux, la configuration de l'adresse IP était réalisée par la commande
ifconfig et celle de la table de routage par la commande route. Désormais, la commande ip regroupe à elle seule
les fonctionnalités de ces deux commandes. Ces dernières étant toujours couramment utilisées, vous allez
apprendre à vous servir des 3 commandes.
Pour afficher les interfaces réseau dont dispose votre machine, vous pouvez utiliser :
la commande ifconfig seule : seules les interfaces actives sont listées ;
-
la commande ifconfig -a : toutes les interfaces sont affichées, y compris les interfaces désactivées ;
-
la commande ip link show ou ip link : les interfaces sont listées ; leur état est affiché après le champ
STATE. Seuls les paramètres de niveau liaison sont affichés.
La commande ip addr show : les interfaces sont toutes listées ; leur état, leurs paramètres de niveau liaison
et leurs paramètres de niveau IP sont présentés.
Si vous souhaitez connaître les paramètres d'une seule carte réseau, il suffit de préciser le nom de l'interface en
argument. Par exemple, les commandes ifconfig eth0 et ip addr show eth0 fournissent les informations
relatives à l'interface eth0 uniquement.
1) Relevez le nom des interfaces réseau (actives ou non) dont dispose votre machine. Pour cela, testez les deux
commandes, ifconfig et ip. Remarque : dans la suite, nous noterons la carte Ethernet ethx : remplacez x par la
valeur de votre machine...
-
2) Relevez l'adresse IP et le masque de l'interface Ethernet (ethx).
a) Quelle est l'adresse du réseau correspondant?
b) Quelle est l'adresse de diffusion ?
c) Quelle est la notation CIDR de ce réseau ?
d) S'agit-il d'une adresse privée ou publique ?
3) Relevez l'adresse MAC de votre interface eth. Elle vous servira plus tard.
4) Une interface nommée lo est citée : à quoi correspond-elle ?
A. Quidelleur
MMI1 Meaux 2014-2015
Services sur réseaux S1
1/7
Pour afficher la table de routage de votre machine, vous pouvez utiliser ces commandes :
route -n (l'option -n précise que les machines sont identifiées par leur adresse IP et non par leur nom d'hôte)
-
ip route show
5) Testez successivement ces deux commandes.
a) A quoi correspond chaque ligne de la table ?
b) Quelle est l'adresse IP de la passerelle par défaut ?
6) Le fichier dans lequel les serveurs DNS sont définis est le fichier /etc/resolv.conf
a) Affichez son contenu.
b) Déterminez le nom du domaine auquel appartient votre machine.
c) Déterminez l'adresse du ou des serveurs DNS.
7) Les machines de l'IUT obtiennent leurs paramètres IP d'un serveur DHCP au démarrage. Pour demander une
nouvelle adresse, il faut redémarrer le service réseau. La commande est /etc/init.d/networking restart
Après avoir exécuté la commande, observez de nouveau votre adresse IP. A-t-elle changé ? C'est un choix de
configuration du serveur DHCP.
2. Les commandes de test de connectivité et l'analyse de trames
2.1. La commande ping
La commande ping (Packet Internet Groper) est une commande fondamentale du test de connectivité de votre
station. Elle est consiste à émettre une requête d'écho vers une station dont on souhaite savoir si elle est
connectée au réseau ou non ; la station destination envoie une réponse d'écho.
La syntaxe de la commande ping est : ping adresse_IP
ou bien ping nom_DNS_de_machine
Sur Linux, par défaut, la commande ping émet des requêtes jusqu'à ce qu'elle soit manuellement arrêtée en
tapant sur simultanément sur les touches Ctrl et C du clavier.
8) Réalisez une commande ping à destination de la machine de votre voisin.
9) Observez les informations affichées dans le terminal :
a) A quoi correspond la valeur de TTL affichée dans le terminal ? Précisez bien à quel paquet il appartient.
b) A quoi correspond la valeur de temps affichée dans le terminal ?
Vous allez maintenant utiliser un outil fondamental de l'administration des réseaux : l’analyseur de trames
encore appelé analyseur de protocoles ou sniffer. Il permet de lire toutes les trames passant sur l’interface
réseau de votre machine dans le but d’analyser les échanges sur le réseau (surveillance du trafic pour la
maintenance ou la sécurité).
Dans les TP, nous utiliserons Wireshark, un logiciel gratuit et open-source, utilisable sur les systèmes Linux,
Windows et Mac. Il est téléchargeable sur le site www.wireshark.org. Wireshark analyse le trafic passant sur les
interfaces Ethernet et WiFi. Wireshark repose sur la commande linux tcpdump, qui permet de sniffer le trafic en
mode commande ; le logiciel fournit juste une interface graphique à tcpdump pour faciliter la lecture. Il dispose en
plus de nombreux outils permettant de simplifier et d'affiner l’analyse du trafic.
L’interface graphique de Wireshark présente trois fenêtres (Illustration 1).
Fenêtre du haut : liste des paquets capturés avec résumé de leurs caractéristiques. En cliquant sur un paquet
de cette fenêtre, vous modifiez le contenu des deux autres.
A. Quidelleur
MMI1 Meaux 2014-2015
Services sur réseaux S1
2/7
-
Fenêtre du milieu : contenu du paquet, en-tête par en-tête (des couches basses vers les couches hautes)
-
Fenêtre du bas : représentation hexadécimale du paquet sélectionné. Les champs sélectionnés dans la
fenêtre du milieu y sont affichés en caractères gras.
Illustration 1: Les trois fenêtres de Wireshark
Pour observer le contenu de chaque champ d'un en-tête, il suffit de cliquer sur l'icône en triangle en face de l'entête (Illustration 2).
Illustration 2: Affichage des en-têtes
Pour utiliser Wireshark, il faut avoir les privilèges du root. Il est donc nécessaire, soit d'ouvrir une session root
(alors vous pouvez utiliser Wireshark depuis l'interface graphique), soit de prendre l'identité du root dans un
terminal (commande su -) et lancer le logiciel en tapant simplement dans ce terminal : wireshark
10) Activez une capture wireshark (capture → interfaces : choisissez ethx puis cliquez sur start) et activez un filtre
d'affichage permettant de ne voir que les trames échangées avec votre voisin (tapez
ip.addr==adresse_du_voisin dans la ligne filter, puis cliquez sur le bouton apply).
11) Réalisez une commande ping sur la machine de votre voisin.
12) Observez la capture wireshark :
a) Quels sont les protocoles de niveau accès-réseau et réseau utilisés par la commande ping ?
b) Complétez ce schéma représentant la pile de protocoles utilisés par votre machine pour réaliser une
commande ping :
Couche réseau
Couche accès-réseau
A. Quidelleur
MMI1 Meaux 2014-2015
Services sur réseaux S1
3/7
c) Relevez les adresses MAC et IP source et destination de la requête et de la réponse ping. A quelles
machines appartiennent-elles ?
d) Relevez la valeur du champ Protocol de l'en-tête IP : quelle est sa valeur ? A quel protocole correspond
cette valeur ?
e) Relevez la valeur du champ TTL de l'en-tête IP d'une requête et d'une réponse ping. Expliquez-les.
f)
Relevez la valeur des champs Type et Code d'une réponse et d'une requête ping.
g) Arrêtez la capture.
13) Activez une nouvelle capture Wireshark, activez-y un filtre permettant d'afficher uniquement les paquets
ICMP (tapez icmp dans la case filtre) puis réalisez une commande ping sur une machine d'Internet, par
exemple : ping www.google.com
14) Quel est le protocole utilisé par votre machine pour trouver l'adresse IP correspondant au nom
www.google.com ?
15) Observez les informations affichées dans le terminal. A quoi correspond la valeur de TTL affichée dans le
terminal ? Expliquez pourquoi cette valeur est différente de celle observée à la question 9)a.
16) Observez la capture wireshark :
a) Relevez les adresses MAC et IP source et destination de la requête et de la réponse ping. Elles vous
serviront plus tard...
b) Relevez la valeur du champ TTL de l'en-tête IP d'une requête et d'une réponse ping. Expliquez les valeurs
observées..
c) Arrêtez la capture.
17) Activez une nouvelle capture et exécutez la commande : ping www.linux.org
a) Relevez l'adresse MAC destination de la requête émise. Comparez-la à celle relevée à la questions 16)a.
b) A votre avis, à qui appartient l'adresse MAC destination de la requête ?
18) Conclusion ; quelle est la portée d'une adresse MAC ? D'une adresse IP ?
Complétez le schéma de l'Illustration 3récapitulant les usages des adresses MAC et IP.
C
A
Réseau local
B
Paquet émis de A vers C :
MAC src =
MAC dst =
IP src =
IP dst =
eth0
Routeur
Internet
Paquet émis de A vers B :
MAC src =
MAC dst =
IP src =
IP dst =
Illustration 3
19) Relancez une nouvelles capture et exécutez la commande suivante :
ping -t 2 www.google.com
a) Dans la capture, sélectionnez une requête et observez le champ TTL. Déduisez-en la fonction de l'option
-t. Expliquez le résultat de la commande.
A. Quidelleur
Services sur réseaux S1
4/7
MMI1 Meaux 2014-2015
b) Sélectionnez maintenant une réponse : quelles sont les valeurs des champs Type et Code pour un paquet
ICMP Time to live exceeded ?
c) Arrêtez la capture.
20) Testez la commande ping 127.0.0.1
Quelle est la machine interrogée ?
2.2. La commande traceroute
La syntaxe de la commande traceroute est la suivante :
traceroute adresse_IP_de_la_machine_visée
ou bien
traceroute nom_DNS_de_la_machine_visée
21) Activez une nouvelle capture.
22) Exécutez la commande : traceroute www.google.com
23) Observez les résultats dans le terminal :
a) A quoi correspondent les 3 valeurs de temps indiquées dans chaque ligne ? Expliquez les variations de
ces 3 valeurs de temps sur une même ligne.
b) Combien de routeurs ont-ils été traversés pour atteindre la destination ? Si l'on recommence l'expérience
dans 1 heure, est-on sûr d'obtenir le même nombre ? Expliquez.
24) Observez les résultats dans la capture.
a) Observez d'abord les paquets émis par votre machine : quel est le protocole de niveau transport utilisé ?
b) Quel est le protocole utilisé par les paquets de réponse reçus ?
c) Observez le TTL des paquets émis par votre machine et expliquez les paquets de réponse reçus.
25) Conclusion : expliquez simplement le fonctionnement de la commande traceroute. Pour cela, complétez
l'Illustration 4.
A. Quidelleur
MMI1 Meaux 2014-2015
Services sur réseaux S1
5/7
traceroute D
S
D
R1
R2
R3
R4
Protocole :
IP src / IP dst :
TTL :
Protocole :
Type/code :
IP src / IP dst :
Protocole :
IP src /IP dst :
TTL :
Protocole :
Type/code :
IP src / IP dst :
Protocole :
IP src /IP dst :
TTL :
Protocole :
Type/code :
IP src / IP dst :
Protocole :
IP src /IP dst :
TTL :
Protocole :
Type/code :
IP src / IP dst :
Illustration 4

Remarque
Windows n'utilise pas le même protocole que Linux pour exécuter la commande traceroute (nommée tracert sous
Windows) : ce sont des paquets ICMP qui sont émis. Le principe reste le même : le TTL du premier paquet ICMP
echo request émis vaut 1, celui des suivants est incrémenté.
3. La commande whois
La commande whois interroge les RIR pour obtenir des renseignements sur une adresse IP ou un nom de
domaine. Elle permet d'obtenir des informations administratives, comme le nom de l'organisme qui a acheté
l'adresse IP, le FAI qui la lui a allouée, le RIR auquel la plage d'adresses appartient... Ces informations sont par
exemple exploitées par des administrateurs réseau pour entrer en contact avec l'administrateur d'un domaine
lorsqu'ils constatent une anomalie .
La syntaxe de la commande whois est la suivante :
whois adresse_IP
ou bien
whois nom_de_domaine_Internet
26) Activez une capture et activez un filtre permettant de ne visualiser que les paquets portant l'adresse IP de
votre machine.
27) Exécutez la commande : whois 195.220.83.5
À quel organisme appartient cette adresse ? Quel FAI la lui a attribuée ? Quel est le RIR qui a alloué l'adresse
à ce FAI ? Quel est le RIR qui a répondu ?
A. Quidelleur
MMI1 Meaux 2014-2015
Services sur réseaux S1
6/7
28) D'après la capture, quel est le nom du protocole utilisé par la commande whois ? À quelle couche du modèle
TCP/IP appartient-il ? Quel est le protocole de niveau transport qui l'encapsule ? Complétez le schéma
suivant représentant la pile de protocoles utilisés par votre machine pour réaliser une commande whois:
Couche application
Couche transport
Couche réseau
Couche accès-réseau
4. Introduction à la résolution d'adresse
29) Activez une capture et activez un filtre permettant de ne visualiser que les paquets portant l'adresse IP de
votre machine.
30) Depuis un navigateur, connectez-vous à un site internet quelconque.
31) Dans la capture, sélectionnez une requête DNS.
a) Quelle est l'adresse IP du serveur DNS de l'université ?
b) A quelle couche du modèle TCP/IP le protocole DNS appartient-il ?
c) Dans quel protocole de niveau transport est-il encapsulé ? Justifiez le choix de ce protocole.
Il existe plusieurs commandes permettant d'interroger directement un serveur DNS à propos de ses
enregistrements, notamment nslookup, host et dig. Si on ne précise par de serveur DNS spécifique, c'est le
serveur défini dans le fichier /etc/resolv.conf qui est interrogé.
La syntaxe de ces commandes pour résoudre le nom en adresse est :
nslookup nom
-
host nom
-
dig nom
Pour résoudre une adresse en nom :
nslookup adresse
-
host adresse
-
dig -x adresse
32) Réalisez la résolution de nom pour www.univ-mlv.fr.
33) Réalisez la résolution inverse pour l’adresse 80.247.225.35
5. Exercices d'application
Ces deux questions sont des exercices de réflexion et ne nécessitent aucune manipulation.
34) Vous venez de démarrer votre station. Vous ouvrez l’Invite de commande et tapez ftp
Picsou.monreseau.com, Picsou étant le nom DNS d’un serveur FTP connecté à votre réseau local. La
connexion échoue. Vous tapez alors ftp 192.168.1.12 et la connexion est acceptée (192.168.1.12 est
l’adresse IP de Picsou). D’où vient le problème ?
35) Vous avez vérifié la connectivité de votre machine sur le réseau local. Vous ouvrez un navigateur sur votre
station et tapez successivement plusieurs URL. Le navigateur vous répond à chaque fois « Impossible de
trouver la page ». Décrivez les étapes suivies pour localiser « la panne ».
A. Quidelleur
MMI1 Meaux 2014-2015
Services sur réseaux S1
7/7