Ce que fait un analyseur de protocole
Un analyseur de protocole (ou sniffer) enregistre les trames qui passent par une carte réseau et les décode : pour chaque trame, il montre les en-têtes de chaque couche et le contenu transporté. C’est l’outil de référence pour dépanner un réseau, comprendre un protocole ou vérifier ce qui circule réellement.
Wireshark est le plus connu : logiciel libre (il s’appelait Ethereal jusqu’en 2006), disponible sous Windows, macOS et Linux, il sait décoder des milliers de protocoles.
Ce qu’on peut capturer… et ce qu’on ne voit pas
Normalement, une carte réseau ignore les trames qui ne lui sont pas adressées. Wireshark la place en mode promiscuité (promiscuous) pour tout recevoir. Mais sur un réseau commuté, le commutateur n’envoie à chaque port que le trafic qui lui est destiné, plus les diffusions : depuis son poste, on ne voit donc que son propre trafic. Pour observer les échanges d’autres machines, il faut un port miroir (port mirroring, SPAN) configuré sur le commutateur, ou capturer directement sur la machine concernée.
L’interface en trois volets
| Volet | Contenu | À quoi il sert |
|---|---|---|
| Liste des paquets (en haut) | Une ligne par trame : numéro, heure, source, destination, protocole, résumé | Suivre la chronologie des échanges |
| Détail (au milieu) | La trame sélectionnée, décodée couche par couche, en arborescence dépliable | Lire les champs de chaque en-tête |
| Octets (en bas) | Le contenu brut, en hexadécimal et en texte | Voir la valeur exacte de chaque octet |
Filtrer pour s’y retrouver
Une capture de quelques secondes compte déjà des centaines de trames. Le filtre d’affichage, saisi dans la barre en haut de la fenêtre, ne garde que celles qui correspondent à une expression. La barre devient verte si l’expression est valide, et propose une autocomplétion des champs (ip., tcp., dns.…).
| Opérateur | Sens |
|---|---|
==, != | Égal, différent |
&& (ou and) | Et |
|| (ou or) | Ou |
! (ou not) | Non |
ip.addr == 192.168.10.20 tout le trafic de ou vers cette machine
ip.src == 192.168.10.20 && dns les requêtes DNS envoyées par ce poste
tcp.port == 443 le trafic HTTPS
tcp.flags.syn == 1 && tcp.flags.ack == 0 les demandes d'ouverture de connexion TCP
http.request les requêtes HTTP (en clair)
arp || icmp ARP et ping
!(tcp.port == 22) tout sauf SSH (utile si l'on capture via SSH)
Deux fonctions pratiques : clic droit sur une trame → Suivre → Flux TCP reconstitue toute une conversation ; le menu Statistiques → Hiérarchie des protocoles montre la répartition du trafic.
Lire l’encapsulation
Dans le volet de détail, une requête web se déplie ainsi, de la couche la plus basse à la plus haute :
| Ligne affichée | Couche | Ce qu’on y lit |
|---|---|---|
| Frame | — | Informations de capture : taille, heure, interface |
| Ethernet II | Accès réseau | Adresses MAC source et destination |
| Internet Protocol Version 4 | Internet | Adresses IP, TTL, protocole transporté |
| Transmission Control Protocol | Transport | Ports, numéros de séquence, drapeaux |
| Hypertext Transfer Protocol | Application | Méthode, ressource, en-têtes HTTP |
[ Ethernet [ IP [ TCP [ HTTP [ données ] ] ] ] ]
© 2026 Bruno Jousseaume. Ce cours est publié sous licence CC BY-NC-SA 4.0 : vous pouvez le partager et l’adapter en citant l’auteur et un lien vers cette page, sans usage commercial, et en partageant vos adaptations sous la même licence.