Examen de TP de Réseaux - L3 Informatique
Durée 3h. Les documents de cours et codes sources des TP sont autorisés.
Mise en place des machines virtuelles
Vous devez commencer par mettre en place vos machines virtuelles. Attention, il y une nouvelle machine appelée client2.
bruno@licinfo1:/usr/local/vbox/vdi$ ./managevirtualmachines.sh clonemaster client2 bruno@licinfo1:/usr/local/vbox/vdi$ ./managevirtualmachines.sh create client2
mettez all à la place de client2
si vous refaites toutes les machines.
dhclient eth0
ou dchlient eth1
En cas de problème, supprimer toutes les machines : ./managevirtualmachines.sh remove all
, puis lancer virtualbox et supprimer les machines qui resteraient ainsi que les disques dur dans le gestionnaire de media.
EXO1 - Etude de la machine client2
Vous donnerez les réponses au trois questions dans le fichier exo1.txt
- Etudier la machine client2, donner toutes les caractéristiques réseaux que vous pouvez trouver en indiquant dans quels fichiers ou avec quelles commandes vous avez obtenu ces informations.
- Depuis votre machine hôte, donnez la commande pour vous connectez en ssh sur la machine client2 et pouvoir lancer directement wireshark.
- Que se passe-t-il si j’exécuté la commande
ping -s 3200 -c 1 server
sur la machineclient
.
EXO2 - SSH
Créer les fichiers suivants testUser.txt
à la racine du compte user
de la machine client
, et testServer.txt
dans le répertoire ICI
à la racine du compte root
de la machine server
.
Vous donnerez la liste des commandes qui répondent aux questions suivantes dans le fichier exo2.txt
.
- A partir du compte user sur la machine client, déposer le fichier
testUser.txt
dans le répertoire ICI du compte root de la machine server. - A partir du compte user sur la machine client, déposer le fichier
testUser.txt
dans le répertoire /tmp de la machine server. - A partir du compte user sur la machine client, récuperer le fichier
testServer.txt
dans le répertoire ICI du compte root de la machine server. - Mettez en place la connexion avec des clés RSA pour l’utilisateur user de la machine
client2
puisse se connecter en tant que user sur la machineclient
. - Depuis le compte user sur la machine client, exécuter la commande
ls
en tant que root sur la machineserver
.
EXO3 - Ecoute
Vous mettrez vos réponses dans le fichier exo3.txt
.
- Dans le répertoire home du compte user de la machine client2, vous trouverez un exécutable appelé mystere. Ce programme effectue une action sur le réseau, à l’aide de wireshark, expliquez laquelle.
- A l’aide de wireshark expliquer quelle est la différence au niveau du réseau entre les commandes suivantes exécutées depuis la machine client2 ;
- ping client
- ping server
EXO4 - Socket
Cet exercice a pour but d’écrire un serveur (MajTCPServer.c
), son client (MajTCPClient.c
) et la version multiclients du serveur (MajTCPMultiServer.c
). Le serveur renvoie les chaînes de caractères envoyées par des clients après les avoir mises en majuscule.
MajTCPServer.c
fonctionne de la façon suivante :- À son lancement, le serveur affiche sur sa console son adresse et son numéro de port d’attachement local.
- Puis il envoie au client un message d’accueil (
Welcome on MajTCPServer
), ce message précise que les chaines sont envoyées ligne par ligne, et que l’envoi d’une ligne contenant uniquement un point (“.”) termine la serveur. - Pour chaque ligne reçue le serveur la met en majuscule (
man toupper(int c)
) et la renvoie au client. - Lorsqu’une ligne ne contenant qu’un point est reçue, le serveur se termine.
Tester le serveur MajTCPServer avec la commande telnet
.
- Écrire le programme
MajTCPClient.c
qui prend en argument l’adresse IP et le port d’un serveur. Après la connexion, le client permettra de saisir au clavier des chaines, de les envoyer au serveur et d’afficher les réponses. - Ecrire une version multiclients
MajTCPMultiServer.c
qui permet à plusieurs clients de se connecter.