Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| tcpdump [2025/12/15 11:46] – huracan | tcpdump [2025/12/16 09:00] (Version actuelle) – [4. Fermeture de connexion] huracan | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ====== Cheat Sheet – Lecture rapide des flags TCP (tcpdump) | + | ===== Cheat Sheet – Lecture rapide des flags TCP (tcpdump) ===== |
| Objectif : **diagnostic immédiat** d’un problème réseau ou applicatif en regardant uniquement les **flags TCP**. | Objectif : **diagnostic immédiat** d’un problème réseau ou applicatif en regardant uniquement les **flags TCP**. | ||
| - | --- | + | ==== 1. Flags essentiels ==== |
| - | + | ||
| - | ===== 1. Flags essentiels | + | |
| ^ Flag ^ Signification ^ | ^ Flag ^ Signification ^ | ||
| Ligne 14: | Ligne 12: | ||
| | R | Coupure / refus | | | R | Coupure / refus | | ||
| - | --- | + | ==== 2. Connexion TCP ==== |
| - | + | ||
| - | ===== 2. Connexion TCP ===== | + | |
| ^ Séquence observée ^ Interprétation ^ | ^ Séquence observée ^ Interprétation ^ | ||
| Ligne 24: | Ligne 20: | ||
| | [S.] sans [.] | Retour bloqué / client défaillant | | | [S.] sans [.] | Retour bloqué / client défaillant | | ||
| - | --- | + | ==== 3. Échange de données ==== |
| - | + | ||
| - | ===== 3. Échange de données | + | |
| ^ Flags ^ Lecture rapide ^ | ^ Flags ^ Lecture rapide ^ | ||
| Ligne 33: | Ligne 27: | ||
| | [.] répétés | Perte de paquets / MTU / congestion | | | [.] répétés | Perte de paquets / MTU / congestion | | ||
| - | --- | + | ==== 4. Fermeture ==== |
| - | + | ||
| - | ===== 4. Fermeture | + | |
| ^ Séquence ^ Interprétation ^ | ^ Séquence ^ Interprétation ^ | ||
| Ligne 42: | Ligne 34: | ||
| | [R] direct | Coupure brutale | | | [R] direct | Coupure brutale | | ||
| - | --- | + | ==== 5. Diagnostic express ==== |
| - | + | ||
| - | ===== 5. Diagnostic express | + | |
| ^ Ce que vous voyez ^ Conclusion probable ^ | ^ Ce que vous voyez ^ Conclusion probable ^ | ||
| Ligne 53: | Ligne 43: | ||
| | ACK en boucle | Perte réseau / MTU | | | ACK en boucle | Perte réseau / MTU | | ||
| - | --- | + | ==== 6. Commandes utiles ==== |
| - | + | ||
| - | ===== 6. Commandes utiles | + | |
| Tout le TCP : < | Tout le TCP : < | ||
| Ligne 66: | Ligne 54: | ||
| tcpdump -nn ' | tcpdump -nn ' | ||
| - | --- | + | ==== 7. Règle d’or ==== |
| - | ===== 7. Règle d’or ===== | + | |
| - | + | * **RST** → refus ou coupure | |
| - | * **SYN sans SYN-ACK** → réseau ou filtrage | + | * **Handshake OK sans trafic** → applicatif |
| - | * **RST** → refus ou coupure | + | |
| - | * **Handshake OK sans trafic** → applicatif | + | |
| - | + | ||
| - | --- | + | |
| **À utiliser comme fiche réflexe lors d’une analyse tcpdump en production.** | **À utiliser comme fiche réflexe lors d’une analyse tcpdump en production.** | ||
| - | |||
| - | |||
| - | |||
| Ligne 342: | Ligne 323: | ||
| Lecture des flags TCP dans tcpdump – résumé | Lecture des flags TCP dans tcpdump – résumé | ||
| + | |||
| 1. Connexion | 1. Connexion | ||
| - | [S] → tentative de connexion | + | |
| - | + | [S.] → serveur OK | |
| - | [S.] → serveur OK | + | [.] → connexion établie |
| - | + | ||
| - | [.] → connexion établie | + | ✔ [S] → [S.] → [.] = connexion normale |
| - | + | ||
| - | ✔ [S] → [S.] → [.] = connexion normale | + | |
| 2. Données | 2. Données | ||
| - | [P.] → données envoyées | + | |
| - | + | [.] → données reçues (ACK) | |
| - | [.] → données reçues (ACK) | + | |
| - | + | ✔ Échange fluide = fonctionnement normal | |
| - | ✔ Échange fluide = fonctionnement normal | + | |
| 3. Fermeture | 3. Fermeture | ||
| - | [F.] → fermeture propre | + | |
| - | + | [.] → ACK de fermeture | |
| - | [.] → ACK de fermeture | + | |
| - | + | ✔ Fermeture propre = fin normale | |
| - | ✔ Fermeture propre = fin normale | + | |
| 4. Erreurs / anomalies | 4. Erreurs / anomalies | ||
| - | [R] / [R.] → connexion refusée ou coupée | + | |
| - | + | [S] répétés → service inaccessible / filtrage | |
| - | [S] répétés → service inaccessible / filtrage | + | [S.] sans [.] → problème côté client ou retour bloqué |
| - | + | ACK répétés ([.]) → perte de paquets / MTU / congestion | |
| - | [S.] sans [.] → problème côté client ou retour bloqué | + | |
| - | + | ||
| - | ACK répétés ([.]) → perte de paquets / MTU / congestion | + | |
| 5. Règle d’or | 5. Règle d’or | ||
| Ligne 387: | Ligne 362: | ||
| 6. Diagnostic express | 6. Diagnostic express | ||
| - | Ce que vous voyez Conclusion probable | + | |
| - | SYN → pas de réponse Filtrage / service down | + | | |
| - | SYN → RST Port fermé | + | |
| - | Connexion OK puis RST Timeout / crash applicatif | + | |
| - | ACK en boucle Perte réseau / MTU | + | |
| + | | ||
| ---- | ---- | ||
| + | ==== PLUS PRECISEMENT ==== | ||
| 1. Rappel des principaux drapeaux TCP | 1. Rappel des principaux drapeaux TCP | ||
| Ligne 457: | Ligne 434: | ||
| Flags [.] | Flags [.] | ||
| | | ||
| - | Fermeture TCP ordonnée | + | * Fermeture TCP ordonnée |
| - | Comportement attendu en fin de session | + | |
| 3.4 Réinitialisation (RST) | 3.4 Réinitialisation (RST) | ||
| Ligne 468: | Ligne 445: | ||
| Interprétation possible : | Interprétation possible : | ||
| - | Port fermé | + | * Port fermé |
| - | + | | |
| - | Service non à l’écoute | + | |
| - | + | | |
| - | Timeout applicatif | + | |
| - | + | ||
| - | Pare-feu ou IPS qui coupe la connexion | + | |
| Très fréquent lors de problèmes applicatifs ou de filtrage. | Très fréquent lors de problèmes applicatifs ou de filtrage. | ||
| 3.5 SYN sans réponse (connexion impossible) | 3.5 SYN sans réponse (connexion impossible) | ||
| - | Flags [S] | ||
| - | Flags [S] | ||
| - | Flags [S] | ||
| - | + | Flags [S] | |
| - | SYN retransmis | + | Flags [S] |
| - | + | Flags [S] | |
| - | Pas de SYN-ACK | + | |
| + | * SYN retransmis | ||
| + | | ||
| Causes possibles : | Causes possibles : | ||
| - | Service | + | * Liste à puceService |
| - | + | | |
| - | Filtrage réseau | + | |
| - | + | ||
| - | Problème de routage | + | |
| 3.6 SYN-ACK sans ACK final | 3.6 SYN-ACK sans ACK final | ||
| - | Flags [S.] | ||
| - | Flags [S.] | ||
| - | + | Flags [S.] | |
| - | Le serveur répond | + | Flags [S.] |
| - | + | ||
| - | Le client ne confirme pas | + | * Liste à puceLe |
| + | * Liste à puceLe | ||
| Causes : | Causes : | ||
| - | Problème | + | * Liste à puceProblème |
| - | + | * Liste à puceFiltrage | |
| - | Filtrage | + | * Liste à puceMTU |
| - | + | ||
| - | MTU / asymétrie réseau | + | |
| 4. Analyse des problèmes fréquents via les flags | 4. Analyse des problèmes fréquents via les flags | ||
| + | |||
| 4.1 Boucle de retransmission ACK | 4.1 Boucle de retransmission ACK | ||
| - | Flags [.] | ||
| - | Flags [.] | ||
| - | Flags [.] | ||
| + | Flags [.] | ||
| + | Flags [.] | ||
| + | Flags [.] | ||
| + | | ||
| + | ACK répétés | ||
| - | ACK répétés | + | * Liste à puceIndique |
| - | + | * Liste à pucePossiblement | |
| - | Indique | + | |
| - | + | ||
| - | Possiblement | + | |
| 4.2 Retransmissions SYN + RST | 4.2 Retransmissions SYN + RST | ||
| - | Flags [S] | ||
| - | Flags [R.] | ||
| + | Flags [S] | ||
| + | Flags [R.] | ||
| - | Connexion refusée immédiatement | ||
| - | Port fermé ou refus explicite | + | * Liste à puceConnexion refusée immédiatement |
| + | * Liste à pucePort | ||
| 4.3 FIN suivi d’un RST | 4.3 FIN suivi d’un RST | ||
| - | Flags [F.] | ||
| - | Flags [R.] | ||
| + | Flags [F.] | ||
| + | Flags [R.] | ||
| - | Fermeture | + | * Liste à puceFermeture |
| - | + | * Liste à puceSouvent | |
| - | Souvent | + | |
| 5. Indices complémentaires à regarder avec les flags | 5. Indices complémentaires à regarder avec les flags | ||
| Ligne 548: | Ligne 515: | ||
| Les flags seuls ne suffisent pas toujours. À corréler avec : | Les flags seuls ne suffisent pas toujours. À corréler avec : | ||
| - | Numéros | + | * Liste à puceNuméros |
| - | + | * Liste à puceFenêtre | |
| - | Fenêtre | + | * Liste à puceOptions |
| - | + | * Liste à puceRetransmissions | |
| - | Options | + | * Liste à puceTemps |
| - | + | ||
| - | Retransmissions | + | |
| - | + | ||
| - | Temps entre paquets | + | |
| 6. Commandes tcpdump utiles pour l’analyse des flags | 6. Commandes tcpdump utiles pour l’analyse des flags | ||
| Ligne 562: | Ligne 525: | ||
| Afficher uniquement les flags : | Afficher uniquement les flags : | ||
| - | tcpdump -nn -tt -i eth0 ' | + | |
| Voir le détail TCP : | Voir le détail TCP : | ||
| - | tcpdump -nn -vvv -i eth0 tcp | + | |
| Filtrer les RST : | Filtrer les RST : | ||
| - | tcpdump -nn ' | + | |
| Filtrer les SYN : | Filtrer les SYN : | ||
| - | tcpdump -nn ' | + | |
| 7. Méthode d’analyse recommandée | 7. Méthode d’analyse recommandée | ||
| - | Identifier le handshake | + | |
| - | Vérifier la continuité des ACK | + | Vérifier la continuité des ACK |
| - | Repérer les RST / retransmissions | + | Repérer les RST / retransmissions |
| - | Vérifier la fermeture | + | Vérifier la fermeture |
| - | Corréler avec le contexte applicatif | + | Corréler avec le contexte applicatif |
| Ligne 591: | Ligne 554: | ||
| - | ====== | + | ====== |
| Cette page fournit une **méthode synthétique et opérationnelle** pour interpréter les résultats d’un `tcpdump` en se basant sur les **drapeaux TCP (flags)**, dans un objectif de **diagnostic réseau rapide**. | Cette page fournit une **méthode synthétique et opérationnelle** pour interpréter les résultats d’un `tcpdump` en se basant sur les **drapeaux TCP (flags)**, dans un objectif de **diagnostic réseau rapide**. | ||
| Ligne 621: | Ligne 584: | ||
| **Interprétation** : | **Interprétation** : | ||
| - | * Connexion TCP établie correctement | + | Connexion TCP établie correctement |
| - | * Aucun problème réseau apparent | + | Aucun problème réseau apparent |
| --- | --- | ||
| Ligne 633: | Ligne 596: | ||
| </ | </ | ||
| - | * **[P.]** : données envoyées | + | **[P.]** : données envoyées |
| - | * **[.]** : accusé de réception | + | |
| - | **Interprétation** : flux normal, application fonctionnelle. | + | **[.]** : accusé de réception |
| + | |||
| + | **Interprétation** : | ||
| + | |||
| + | flux normal, application fonctionnelle. | ||
| --- | --- | ||
| Ligne 651: | Ligne 617: | ||
| **Interprétation** : | **Interprétation** : | ||
| - | * Fermeture TCP propre et ordonnée | + | Fermeture TCP propre et ordonnée |
| - | * Comportement attendu en fin de session | + | |
| + | Comportement attendu en fin de session | ||
| --- | --- | ||