Python TD 4
L'objectif est d'essayer différentes techniques de programmation réseau, d'abord en n'utilisant
que la distribution standard, puis avec des modules spécialisés.
Pour vous éviter de retaper les codes des transparents de cours, le fichier
source est ici .
1. En modifiant le code du serveur d'écho vu en cours, écrire un mini serveur de chat : les
clients se connectent par telnet sur le port de votre choix. Le serveur demande un nom d'utilisateur,
et renvoie à tous les connectés un message du genre user toto has connected from 10.0.0.7.
Ensuite, chaque ligne entrée par un utilisateur connecté doit être renvoyée à tous les autres,
précédée de son identifiant.
2. Toujours en pur Python, écrire un programme récupérant les adresses IP et MAC de toutes
les machines de votre sous-réseau (on supposera que le masque est
255.255.255.0).
3. Compléter l'exemple du client SNTP en décodant complètement la réponse du
serveur au moyen du module struct. Référence : la
RFC 2030.
4. Récupérer et installer dpkt
(on utilisera subversion, voir la commande dans l'onglet source).
L'utiliser pour refaire l'exercice 2.
5. Récupérer et installer impacket.
L'utiliser pour refaire l'exercice 2.
6. Récupérer et installer scapy.
Lire attentivement les
instruction d'installation,
en particulier celles concernant
les dépendances optionnelles, permettant d'avoir de beaux graphiques.
Reprenez les exemples du cours pour vous familiariser avec l'environnement.
7. Avec scapy, urllib et HTMLParser,
obtenez la liste de toutes les machines de l'université
de Marne-la-Vallée ayant un serveur web actif, et le titre de leur page d'accueil.
(les réseaux de l'université sont 193.55.61.0, 193.55.62.0, 193.55.63.0, 193.50.159.0).