TCP/IP TP3 (noté)

Transcription

TCP/IP TP3 (noté)
TCP/IP TP3 (noté)
But : architecture réseau, protocoles de transport, protocoles applicatifs
Outils conseillés : dhclient, vi, ethereal, telnet, nc
Partie A
Connexion à un site web interne
On suppose que vous souhaitez vous connecter au site web interne (un serveur web en intranet par exemple). Sans lancer de capture de trames, prévoyez l’ensemble des échanges réseaux qui vont avoir lieu, en précisant notamment :
●
●
le rôle et l’adresse IP des machines qui interviennent lors d’un échange,
les protocoles de niveau le plus haut qui interviennent dans les trames échangées (ARP, TCP, DNS, HTTP, …).
Connexion à un site web externe
On suppose que vous souhaitez vous connecter à un site web de l’Internet.
●
Reprenez les questions précédentes
De la théorie à la pratique : site web interne
●
●
●
●
●
Connectez­vous maintenant au serveur web interne en lançant au préalable une capture de trames.
Arrêtez la capture de trames.
Retrouvez les échanges tels que vous les avez « imaginés » dans la partie précédente.
Complétez vos schémas si besoin est.
Conclusion.
De la théorie à la pratique : site web externe
●
●
●
●
●
Connectez­vous à un site web externe en lançant au préalable une capture de trames.
Arrêtez la capture de trames.
Retrouvez les échanges tels que vous les avez « imaginés » dans la partie précédente.
Complétez vos schémas si besoin est.
Conclusion.
Expliquez les différences dans les échanges entre le site web interne et le site web externe.
Partie B
Dans cette partie, à partir des données précédemment capturées, nous allons étudier un certain nombre de détails de fonctionnement de la couche transport.
UDP
●
●
●
●
●
À partir des trames capturées, retrouvez un protocole de niveau applicatif qui s’appuie sur le protocole UDP.
Quel est le numéro de port utilisé par un client pour contacter le service serveur correspondant ?
Quel est le numéro de port utilisé par le serveur pour contacter en retour le client ?
Comment le serveur apprend­il ce numéro de port ?
Retrouvez et notez le schéma d’encapsulation du protocole UDP.
TCP
●
●
●
●
●
●
●
●
●
À partir des trames capturées, retrouvez un protocole de niveau applicatif qui s’appuie sur le protocole TCP.
Quel est le numéro de port utilisé par un client pour contacter le service serveur correspondant ?
Quel est le numéro de port utilisé par le serveur pour contacter en retour le client ?
Comment le serveur apprend­il ce numéro de port ?
Avant le début des échanges de niveau applicatif, des échanges de niveau transport ont lieu.
Dénombrez­les.
A quoi correspondent­ils ?
Faire un schéma de ces échanges en notant la valeur des champs.
Quelle est par la suite la valeur du bit SYN ?
HTTP Le but de cette partie est de comprendre que les navigateurs web ne sont qu’un moyen commode de très haut niveau pour interroger un serveur web, récupérer les données demandées, les interpréter pour vous et vous offrir une version interprétée à leur guise des données reçues. Ils respectent simplement le protocole !
Rien ne vous empêche de faire appel à d’autres outils dès lors que vous respectez le protocole, à savoir par exemple, la suite, le contenu des échanges.
Pour vous en convaincre définitivement et vous faire abandonner l’utilisation des navigateurs, la suite du TP va vous faire simuler la suite logique des échanges effectués par un client avec un serveur web.
●
●
Quelles sont les données nécessaires que doit posséder un processus qui souhaiterait entrer en contact avec un service serveur sur une machine distante, selon le protocole IP ?
Quelle est la première étape des échanges avec la machine cible que doit accomplir un logiciel qui souhaite contacter un service serveur avec connexion sur une machine distante ?
Ce qu’il faut comprendre
Lors de votre connexion à certains sites Internet, ceux­ci vous informent des informations qu’ils détiennent sur vous : adresse IP, type de navigateur, version du navigateur.
●
●
●
●
Expliquez, à la lecture des trames capturées, ce qui peut paraître si « magique ».
Conclusion sur les navigateurs.
Conclusion sur les réseaux et les données qu’ils véhiculent.
Conclusion sur votre vie privée.
Le protocole HTTP
HTTP n’est ni plus ni moins qu’un protocole d’échange de fichiers… au même titre que FTP. Vous pouvez non seulement récupérer par son biais des données, mais également, bel et bien en transmettre vers un serveur. Le protocole le permet ! ! La RFC qui définit HTTP, décrit notamment un certain nombre de commandes ainsi que leur format.
●
Retrouvez au sein des données capturées, les commandes que votre navigateur envoie et qui apparaît dans chaque requête lorsqu’il souhaite récupérer des données.
La commande telnet vous permet en fait d’ouvrir une connexion TCP avec tout service serveur distant fonctionnant au dessus de TCP. Il suffit pour cela de préciser l’adresse IP du serveur ainsi que le port. Vous pouvez par la suite envoyer toute commande de niveau applicatif qui sera dés lors transmise à la connexion TCP correspondante.
L’idée est de reproduire les toutes premières étapes effectuées par votre navigateur pour vous connecter à un serveur web.
• Notez l’adresse IP du serveur avec lequel vous souhaitez ouvrir une connexion,
• Rappelez le numéro de port sur lequel répond par défaut un serveur web
• Lancez une analyse de trames
• Ouvrez une connexion sur le port du serveur web avec telnet
• Arrêtez votre analyse de trames.
• Qu’a fait votre commande ?
•
•
•
•
•
•
•
•
Relancez votre analyse de trames.
Si vous avez été déconnecté, reconnectez­vous au serveur, en passant cette fois son nom DNS, en lieu et place de son adresse IP
Dans la fenêtre, tapez les commandes que vous avez précédemment notée.
Envoyez les.
Quel type de données obtenez­vous avant déconnexion ?
Arrêtez votre analyse de trames.
Analysez les données capturées.
concluez