Le «TCPDump» est un analyseur de paquets et utilisé pour diagnostiquer et analyser les problèmes de réseau. Il capture le trafic réseau qui passe par votre appareil et le regarde par-dessus. L'outil «tcpdump» est un outil puissant pour résoudre les problèmes de réseau. Il est livré avec de nombreuses options, ce qui en fait un utilitaire de ligne de commande polyvalente pour résoudre les problèmes de réseau.
Cet article est un guide détaillé sur l'utilitaire «TCPDUmp» qui comprend son installation, ses fonctionnalités communes et l'utilisation avec différentes options. Commençons par l'installation:
Comment installer «tcpdump»:
Dans de nombreuses distributions, le «TCPDump» sort de la boîte et pour le cocher, utilisez:
$ qui tcpdump
S'il ne se trouve pas dans votre distribution, installez-le en utilisant:
$ sudo apt install tcpdump
La commande ci-dessus sera utilisée pour les distributions basées à Debian telles que Ubuntu et Linuxmint. Pour «redhat» et «centos», utilisez:
$ sudo dnf installer tcpdump
Comment capturer des paquets avec TCPDump:
Diverses interfaces peuvent être utilisées pour capturer des paquets. Pour obtenir une liste d'interfaces, utilisez:
$ sudo tcpdump -d
Ou utilisez simplement «n'importe quoi» avec la commande «TCPDUmp» pour obtenir des paquets à partir de l'interface active. Pour commencer l'utilisation de la capture des paquets:
$ sudo tcpdump - interface
La commande ci-dessus est de tracer des paquets de toutes les interfaces actives. Les paquets seront continuellement saisis jusqu'à ce qu'il obtienne une interruption de l'utilisateur (CTRL-C).
Nous pouvons également limiter le nombre de paquets à capturer à l'aide de l'indicateur «-c» qui signifie «Count.«Pour capturer 3 paquets, utilisez:
$ sudo tcpdump -i tout -c3
La commande ci-dessus est utile pour filtrer un paquet spécifique. De plus, le dépannage des problèmes de connectivité ne nécessite que quelques paquets initiaux pour être capturés.
Le "tcpdump»La commande capture les paquets avec IP et les noms de port par défaut mais pour nettoyer, le désordre et rendre la sortie plus facile à comprendre; Les noms peuvent être désactivés en utilisant "-n" et "-nn”Pour l'option de port:
$ sudo tcpdump -i tout -c3 -nn
Comme le montre la sortie ci-dessus, les noms IP et port ont été retirés.
Comment comprendre les informations sur un paquet capturé:
Pour en savoir plus sur les différents champs d'un paquet capturé, prenons un exemple de paquet TCP:
Un paquet peut avoir divers champs, mais ceux généraux sont affichés ci-dessus. Le premier champ, "09:48:18.960683,»Représente un moment où le paquet est reçu. Vient ensuite les adresses IP; la première IP [216.58.209.130] est l'IP source et la deuxième IP [dix.0.2.15.55812] est la destination IP. Alors vous obtiendrez le drapeau [P.]] Une liste de drapeaux typiques est indiqué ci-dessous:
Drapeau | Taper | Description |
"." | Ack | Signifie reconnaissance |
S | Syn | Flag pour démarrer une connexion |
F | AILETTE | Drapeau pour une connexion fermée |
P | POUSSER | Indique la poussée des données de l'expéditeur |
R | Premier | Connexion réinitialisée |
Et prochain vient le numéro de séquence "SEQ 185: 255". Le client et le serveur utilisent tous deux le numéro de séquence 32 bits pour maintenir et surveiller les données.
Le "ack«Est un drapeau; S'il est 1, cela signifie que le numéro de reconnaissance est valide, et le récepteur attend l'octet suivant.
Le numéro de fenêtre indique la taille du tampon. "gagner 65535»Signifie la quantité de données qui peuvent être tamponnées.
Et à la fin vient la longueur [70] du paquet en octets qui est une différence de ««185: 255".
Filtrage des paquets pour résoudre les problèmes de réseau:
L'outil «tcpdump» capture des centaines de paquets, et la plupart d'entre eux sont moins importants, ce qui rend beaucoup complexe pour obtenir les informations souhaitées pour le dépannage. Dans ce cas, le filtrage jouera son rôle. Par exemple, tout en dépannage si vous n'êtes pas intéressé par un type de trafic particulier, vous pouvez le filtrer à l'aide de «TCPDUmp», qui est livré avec des paquets de filtrage en fonction des adresses IP, des ports et des protocoles.
Comment capturer un paquet en utilisant le nom d'hôte avec la commande tcpdump:
Pour obtenir le paquet d'un hôte spécifique uniquement, utilisez:
$ sudo tcpdump -i tout -c4 hôte 10.0.2.15
Si vous voulez obtenir un trafic à sens unique, utilisez "SRC" et "DST«Options à la place de«héberger."
Comment capturer un paquet à l'aide du numéro de port avec la commande tcpdump:
Pour filtrer les paquets avec le numéro de port, utilisez:
$ sudo tcpdump -i tout -c3 -nn port 443
Le «443» est le numéro de port HTTPS.
Comment capturer un paquet à l'aide du protocole avec la commande tcpdump:
Avec la commande «tcpdump», vous pouvez filtrer les paquets en fonction de tout protocole tel que UDP, ICMP, ARP, etc. Tapez simplement le nom du protocole:
$ sudo tcpdump -i n'importe quel -c6 udp
Les commandes ci-dessus ne capturent que des paquets qui appartiennent au protocole «UDP».
Comment combiner des options de filtrage à l'aide d'opérateurs logiques:
Différentes options de filtrage peuvent être combinées à l'aide d'opérateurs logiques comme «et / ou»:
$ sudo tcpdump -i any -c6 -nn hôte 10.0.2.15 et port 443
Comment stocker des données capturées:
Les données saisies peuvent être enregistrées dans un fichier pour les surveiller plus tard, et pour cette option «-w» sera utilisée, et «W» signifie «écrire»:
$ sudo tcpdump -i n'importe quel -c5 -w paquetdata.PCAP
L'extension du fichier serait «.PCAP », qui signifie« Capture de paquets."Une fois la capture terminée, le fichier serait enregistré dans votre lecteur local. Ce fichier ne peut pas être ouvert ou lu à l'aide d'un programme d'éditeur de texte. Pour le lire, utilisez le «-r«Flag avec« tcpdump »:
$ tcpdump -r paquetdata.PCAP
Conclusion:
Le «TCPDump» est un outil précieux et flexible pour capturer et analyser le trafic réseau pour résoudre les problèmes de réseau. Le point d'attention de ce guide est d'apprendre l'utilité de base et avancée de l'utilitaire de ligne de commande «TCPDUmp». Mais si vous trouvez cela difficile, il existe un programme basé sur GUI moins complexe appelé «Wireshark», qui fait à peu près le même travail, mais avec diverses fonctionnalités supplémentaires.