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:49] – [7. Règle d’or] huracan | tcpdump [2025/12/16 09:00] (Version actuelle) – [4. Fermeture de connexion] huracan | ||
|---|---|---|---|
| Ligne 2: | Ligne 2: | ||
| 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 ==== | ||
| Ligne 13: | Ligne 11: | ||
| | F | Fermeture propre | | | F | Fermeture propre | | ||
| | R | Coupure / refus | | | R | Coupure / refus | | ||
| - | |||
| - | --- | ||
| ==== 2. Connexion TCP ==== | ==== 2. Connexion TCP ==== | ||
| Ligne 23: | Ligne 19: | ||
| | [S] → [R] | Port fermé | | | [S] → [R] | Port fermé | | ||
| | [S.] sans [.] | Retour bloqué / client défaillant | | | [S.] sans [.] | Retour bloqué / client défaillant | | ||
| - | |||
| - | --- | ||
| ==== 3. Échange de données ==== | ==== 3. Échange de données ==== | ||
| Ligne 32: | Ligne 26: | ||
| | [.] | Données reçues | | | [.] | Données reçues | | ||
| | [.] répétés | Perte de paquets / MTU / congestion | | | [.] répétés | Perte de paquets / MTU / congestion | | ||
| - | |||
| - | --- | ||
| ==== 4. Fermeture ==== | ==== 4. Fermeture ==== | ||
| Ligne 41: | Ligne 33: | ||
| | [F.] → [R] | Fermeture anormale | | | [F.] → [R] | Fermeture anormale | | ||
| | [R] direct | Coupure brutale | | | [R] direct | Coupure brutale | | ||
| - | |||
| - | --- | ||
| ==== 5. Diagnostic express ==== | ==== 5. Diagnostic express ==== | ||
| Ligne 52: | Ligne 42: | ||
| | Coupure après quelques secondes | Timeout | | | Coupure après quelques secondes | Timeout | | ||
| | ACK en boucle | Perte réseau / MTU | | | ACK en boucle | Perte réseau / MTU | | ||
| - | |||
| - | --- | ||
| ==== 6. Commandes utiles ==== | ==== 6. Commandes utiles ==== | ||
| Ligne 65: | Ligne 53: | ||
| Voir les tentatives de connexion : < | Voir les tentatives de connexion : < | ||
| tcpdump -nn ' | tcpdump -nn ' | ||
| - | |||
| - | --- | ||
| ==== 7. Règle d’or ==== | ==== 7. Règle d’or ==== | ||
| Ligne 75: | Ligne 61: | ||
| **À 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 340: | 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 385: | 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 455: | 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 466: | 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 546: | 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 560: | 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 589: | 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 619: | 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 631: | 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 649: | 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 | ||
| --- | --- | ||