Que sont les flags TCP?
 

Les flags TCP sont utilisés dans les transferts de paquets TCP pour indiquer un état de connexion particulier ou fournir des informations supplémentaires. Par conséquent, ils peuvent être utilisés à des fins de dépannage ou pour contrôler la façon dont une connexion particulière est gérée. Il y a quelques drapeaux TCP qui sont beaucoup plus couramment utilisés que d’ autres en tant que tels SYNACKet FIN. Cependant, dans cet article, nous allons parcourir la liste complète des Flags TCP et expliquer à quoi chacun est utilisé.

Liste des Flags TCP

Chaque Flags TCP correspond à une taille de 1 bit. La liste ci-dessous décrit chaque Flag plus en détail. De plus, consultez la section RFC correspondante attribuée à certains Flag pour une explication plus complète.

  • SYN– Le drapeau de synchronisation est utilisé comme première étape pour établir une connexion à trois entre deux hôtes. Seul le premier paquet de l’expéditeur et du destinataire doit avoir ce Flag. Le schéma suivant illustre un processus d’établissement de liaison à trois.
    Prise de contact TCP en 3 étapes
  • ACK– Le drapeau d’accusé de réception est utilisé pour accuser réception de la réception réussie d’un paquet. Comme nous pouvons le voir sur le diagramme ci-dessus, le récepteur envoie un ACKainsi qu’un SYNdans la deuxième étape du processus de prise de contact à trois pour dire à l’expéditeur qu’il a reçu son paquet initial.
  • FIN– Le drapeau terminé signifie qu’il n’y a plus de données de l’expéditeur. Par conséquent, il est utilisé dans le dernier paquet envoyé par l’expéditeur.
  • URG– Le drapeau urgent est utilisé pour notifier au récepteur de traiter les paquets urgents avant de traiter tous les autres paquets. Le destinataire sera averti lorsque toutes les données urgentes connues auront été reçues. Voir RFC 6093 pour plus de détails.
  • PSH– Le drapeau push est quelque peu similaire au URGdrapeau et indique au récepteur de traiter ces paquets au fur et à mesure qu’ils sont reçus au lieu de les mettre en mémoire tampon.
  • RST – Le drapeau de réinitialisation est envoyé du récepteur à l’expéditeur lorsqu’un paquet est envoyé à un hôte particulier qui ne l’attendait pas.
  • ECE– Ce Flag est chargé d’indiquer si l’homologue TCP est compatible ECN . Voir RFC 3168 pour plus de détails.
  • CWR– Le drapeau de réduction de la fenêtre d’encombrement est utilisé par l’hôte émetteur pour indiquer qu’il a reçu un paquet avec le ECEdrapeau défini. Voir RFC 3168 pour plus de détails.
  • NS(expérimental) – Le drapeau nonce sum est toujours un drapeau expérimental utilisé pour aider à se protéger contre la dissimulation malveillante accidentelle de paquets à l’expéditeur. Voir RFC 3540 pour plus de détails.
Analyse des Flags TCP dans la CLI

Vous pouvez afficher les Flags TCP utilisés pour chaque paquet TCP directement à partir de votre interface de ligne de commande. Pour ce faire, vous devez exécuter un fichier tcpdump. Cela doit être fait par un utilisateur root, donc si vous n’avez pas d’accès root, essayez d’exécuter ce qui suit:

sudo tcpdump

Cela vous permettra d’analyser tous les paquets envoyés et affichera les paquets contenant l’ un des Flags TCP . Cependant, si vous souhaitez exécuter un tcpdumpuniquement sur les paquets contenant un certain Flag , vous pouvez utiliser l’une des commandes suivantes.

  • ACK – sudo tcpdump 'tcp[13] & 16 != 0'
  • SYN – sudo tcpdump 'tcp[13] & 2 != 0'
  • FIN – sudo tcpdump 'tcp[13] & 1 != 0'
  • URG – sudo tcpdump 'tcp[13] & 32 != 0'
  • PSH – sudo tcpdump 'tcp[13] & 8 != 0'
  • RST – sudo tcpdump 'tcp[13] & 4 != 0'
Résumé

Connaître vos Flags TCP peut être très utile à des fins de dépannage. Si vous avez besoin d’analyser rapidement vos paquets TCP, il est facile d’exécuter une tcpdumpcommande pour un Flag particulier, puis de récupérer les résultats dont vous avez besoin. Assurez-vous de consulter la section RFC de l’un des Flags TCP correspondants ci-dessus pour entrer encore plus en détail sur ce à quoi chacun est utilisé et son fonctionnement.

 

Voici un cours niveau BTS SIO- Services et transport de paquets vers les applications : les modèles de référence OSI et TCP/IP