Comment le trafic réseau Circule – Mise en route
Gideon T. Rasmussen – CISSP, CFSO, CFSA, SCSA
Pour résoudre un problème, vous devez savoir comment le trafic réseau circule dans des circonstances normales. Cet article détaille ce qui se passe lorsqu’un navigateur Web est utilisé pour accéder à un site Web.
Une fois que le nom du site Web est entré dans un navigateur Web, une série de communications se produit sur différents protocoles. Le tableau ci-dessous représente la façon dont le trafic réseau circule:
Ligne:
|
Protocole:
|
Source:
|
Destination:
|
Données:
|
1
|
ARP
|
10.0.1.13
|
Diffusion
|
Qui a 10.0.1.1? Dire 10.0.1.13
|
2
|
ARP
|
10.0.1.1
|
10.0.1.13
|
10.0.1.1 est à 00:80: c8:57:d3:aa
|
3
|
DNS
|
10.0.1.13
|
10.0.1.1
|
Requête standard A www.cyberguard.com
|
4
|
DNS
|
10.0.1.1
|
10.0.1.13
|
Réponse de requête standard CNAME cyberguard.com A 64.94.50.88
|
5
|
TCP
|
10.0.1.13
|
64.94.50.88
|
1939 > http
|
6
|
TCP
|
64.94.50.88
|
10.0.1.13
|
http > 1939
|
7
|
TCP
|
10.0.1.13
|
64.94.50.88
|
1939 > http
|
8
|
HTTP
|
10.0.1.13
|
64.94.50.88
|
GET / HTTP/1.1
|
9
|
HTTP
|
64.94.50.88
|
10.0.1.13
|
HTTP/1.1 200 OK
|
10
|
HTTP
|
64.94.50.88
|
10.0.1.13
|
HTTP Continuation
|
11
|
TCP
|
10.0.1.13
|
64.94.50.88
|
2577 > http Seq=388864 Ack=37076821 Win=8241 Len=0
|
12
|
TCP
|
10.0.1.13
|
64.94.50.88
|
2577 > http Seq = 388864 Ack = 37077089 Gagner = 0 Len=0
|
Le protocole ARP
Avant que les systèmes puissent communiquer, ils doivent connaître les adresses matérielles des autres. Le protocole ARP (Address Resolution Protocol) est utilisé à cette fin. De sa configuration, le poste de travail connaît l’adresse IP du serveur DNS.Ligne
# 1
Protocole: | Source: | Destination: | Données: |
ARP | 10.0.1.13 | Diffusion | Qui a 10.0.1.1? Dire 10.0.1.13 |
Le poste de travail diffuse une requête aux appareils de son réseau demandant « qui a » l’adresse IP avec laquelle il doit communiquer.Ligne
# 2
Protocole: | Source: | Destination: | Données: |
ARP | 10.0.1.1 | 10.0.1.13 | 10.0.1.1 est à 00:80: c8:57:d3:aa |
Le système distant répond en fournissant son adresse matérielle. Maintenant que le poste de travail connaît l’adresse matérielle du système distant, il peut communiquer avec lui.
Le protocole DNS
Le protocole DNS (Domain Name System) est utilisé pour résoudre les noms de système en adresses IP. Lorsqu’un nom de site Web est entré dans un navigateur, le poste de travail doit connaître l’adresse IP correspondante pour atteindre le serveur Web hébergeant le site.Ligne
# 3
Protocole: | Source: | Destination : | Données: |
DNS | 10.0.1.13 | 10.0.1.1 | Requête standard Un www.cyberguard.com |
Le poste de travail demande au serveur DNS de fournir l’adresse IP du serveur Web d’hébergement www.cyberguard.com .
Ligne # 4
Protocole: | Source: | Destination: | Données: |
DNS | 10.0.1.1 | 10.0.1.13 | Réponse de requête standard CNAME cyberguard.com A 64.94.50.88 |
Le serveur DNS répond avec l’adresse IP correspondant à www.cyberguard.com .
Le protocole TCP
Le protocole TCP (Transmission Control Protocol) est utilisé pour transférer des données. Ces trois lignes suivantes comprennent la poignée de main à trois voies TCP : Ligne
# 5
Protocole: | Source: | Destination: | Données: |
TCP | 10.0.1.13 | 64.94.50.88 | 1939 > http |
Le poste de travail initie la connexion au serveur Web (SYN). SYN est une abréviation pour » synchroniser. » Ligne
# 6
Protocole: | Source: | Destination: | Données: |
TCP | 64.94.50.88 | 10.0.1.13 | http > 1939 |
Le serveur Web répond en indiquant qu’il est prêt pour la transmission (SYN ACK). SYN ACK est l’abréviation de » synchroniser l’accusé de réception. » Ligne
# 7
Protocole: | Source: | Destination: | Données: |
DNS | 10.0.1.13 | 64.94.50.88 | 1939 > http |
Le poste de travail envoie au serveur Web indiquant qu’il commence à envoyer du trafic (ACK). Cet accusé de réception indique que la connexion TCP est établie et que le trafic peut commencer à circuler.
Le protocole HTTP
Le protocole HTTP (Hyper Text Transfer Protocol) est utilisé pour diffuser des pages Web. Vous pouvez en voir la preuve à partir de l’adresse du site Web dans votre navigateur (c.-à-d. http://www.cyberguard.com).Ligne
# 8
Protocole: | Source: | Destination: | Données: |
HTTP | 10.0.1.13 | 64.94.50.88 | OBTENIR / HTTP/1.1 |
Le navigateur ouvre une connexion au serveur Web.Ligne
# 9
Protocole: | Source: | Destination: | Données: |
HTTP | 64.94.50.88 | 10.0.1.13 | HTTP/1.1 200 OK |
Le serveur Web accepte la connexion.Ligne
# 10
Protocole: | Source: | Destination: | Données: |
HTTP | 64.94.50.88 | 10.0.1.13 | Suite HTTP |
Les lignes de continuation HTTP représentent l’endroit où le contenu de la page HTML est envoyé. Il comprend du texte, des liens, etc.
Retour à la ligne du protocole TCP
# 11
Protocole: | Source: | Destination: | Données: |
TCP | 10.0.1.13 | 64.94.50.88 | 2577 > http Seq = 388864 Ack = 37076821 Win = 8241 Len=0 |
Cette ligne est en fait répétée quatre fois. Le poste de travail accuse réception du dernier paquet.
Ligne #12 (PREMIER)
Protocole: | Source: | Destination: | Données: |
TCP | 10.0.1.13 | 64.94.50.88 | 2577 > http Seq = 388864 Ack = 37077089 Gagner = 0 Len=0 |
Le poste de travail envoie une réinitialisation, détruisant efficacement la connexion TCP.
Tcpdump et Ethereal
Il est important de noter que le tcpdump fournira différents détails en fonction de l’endroit où il s’exécute sur votre réseau. Dans cet exemple, tcpdump a été exécuté sur l’interface interne du pare-feu avec un poste de travail directement connecté. Si tcpdump était utilisé pour surveiller le même flux de trafic sur l’interface externe, l’adresse IP source apparaîtrait comme l’interface externe du pare-feu, à condition que la traduction dynamique des adresses réseau (DNAT) soit en place. Pour observer comment le trafic proxy circule, il est logique d’exécuter tcpdump sur les interfaces internes et externes, car le proxy agit comme un intermédiaire entre la source et la destination.
La source de la table était un fichier tcpdump visualisé via Ethereal. La syntaxe exacte utilisée était: « tcpdump-vvpni dec1-s1514-w/archive2/dec1.hôte dmp 10.0.1.13 ». La commande tcpdump offre de nombreuses options pour enregistrer des flux de trafic très spécifiques (source/destination, ports et expressions booléennes). Pour plus d’informations, entrez « man tcpdump » sur la ligne de commande. La version Windows est Windump (http://windump.polito.it).
Ethereal est un bon outil pour afficher les fichiers tcpdump. Il est disponible gratuitement à partir de http://www.ethereal.com.
Certains des ports présents dans un tcpdump peuvent vous être inconnus. La liste la plus récente des numéros de port se trouve à http://www.iana.org/assignments/port-numbers (selon la RFC 3232).