Photo publiée avec l'aimable autorisation de Michael_P
Cet article est écrit par Balakrishnan M
Il y a quelque temps, nous avons passé en revue 11 exemples d'utilisation de l'utilitaire editcap pour capturer les vidages réseau. Dans cet article, passons en revue l'utilitaire mergecap et les commandes tshark.
Mergecap est un outil de combinaison de vidage de paquets, qui combinera plusieurs vidages dans un seul fichier de vidage. Sur la base de l'horodatage, les paquets sont écrits dans le fichier de sortie de manière ordonnée. Par défaut, le fichier de sortie est écrit au format libpcap. Cependant, en utilisant les options mergecap, nous pouvons générer une sortie dans différents formats, y compris ceux pris en charge par l'outil wireshark.
mergecap est disponible dans le package wireshark. Assurez-vous que le package wireshark/ethereal est installé pour utiliser le mergecap.
Combiner deux fichiers de vidage en un seul fichier output_dump
Combine les fichiers de capture input_dump1 et input_dump2 et écrit dans le fichier output_dump.
# mergecap -v input_dump1 input_dump2 -w output_dump
Dans cet exemple, input_dump2 contient les paquets capturés après input_dump1. Le output_dump contiendra les paquets intput_dump2 au début suivis des paquets intput_dump1.
# mergecap input_dump1 input_dump2 -w output_dump -a
Imprimer le fichier de vidage de sortie sur la sortie standard
Combinez deux fichiers de vidage réseau et imprimez la sortie sur la sortie standard au lieu d'écrire dans un fichier.
# mergecap -v input1_dump input2_dump -w -
Imprimer le fichier de sortie dans un format d'encapsulation spécifique
Utilisez l'option -T pour obtenir le fichier de sortie dans le format d'encapsulation souhaité, comme indiqué ci-dessous.
# mergecap -v -T ether -w merge_cap capture1 capture2 capture3
3. Fusionner des paquets d'une certaine longueur
Dans cet exemple, output_dump contient les paquets d'une longueur maximale de 100 octets.
# mergecap -v -s 100 dump1 dump2 dump3 -w output_dump
Tshark – Outil de capture de paquets
Tshark est un outil puissant pour capturer les paquets réseau, qui peut être utilisé pour analyser le trafic réseau. Il est livré avec la distribution de l'analyseur de réseau wireshark.
Capturer la capture réseau en continu
L'exemple suivant capture les paquets réseau en continu pendant 60 secondes. Après 60 secondes de capture, il s'arrêterait automatiquement. capture_out contient les paquets qui sont passés sur le réseau au cours des 60 dernières secondes.
# tshark -q -w capture_out -a duration:60
Dans l'exemple suivant, les paquets seront imprimés à l'écran et simultanément ils seront écrits dans le fichier de sortie.
# tshark -S -q -w capture_out -a duration:10
Capturer les statistiques du réseau à l'aide de tshark
Pour voir combien de paquets circulent sur le réseau pendant un intervalle spécifique, utilisez la commande suivante.
# tshark -q -w capture_duration1 -a duration:1 -z io,stat,1
Capturer des paquets réseau pour un hôte spécifique
Utilisez l'exemple suivant pour capturer le flux de paquets pour un hôte particulier (paquets transmis et reçus). Dans cet exemple, nous avons pu voir que pour chaque seconde combien de paquets sont transportés dans le réseau pour l'hôte 192.168.1.185
# tshark -S -q -w capture_duration6 -a duration:6 -z io,stat,1,ip.addr==192.168.1.150 After capturing all the packets for 6 seconds duration, it will print the statistics as like the following, 145 packets dropped 19749 packets captured IO Statistics Interval: 1.000 secs Column #0: ip.addr==192.168.1.185 | Column #0 Time |frames| bytes 000.000-001.000 2733 545242 001.000-002.000 2991 583374 002.000-003.000 3310 650716 003.000-004.000 3236 641896 004.000-005.000 3518 690860 005.000-006.000 3310 654988 006.000-007.000 638 122812
Capturer des paquets réseau sur un port spécifique
Cet exemple capture uniquement les paquets ssh.
# tshark -f “tcp port 22” -w capture_out
Capturer les paquets réseau pour une durée spécifique
L'exemple suivant capture des paquets pour une durée spécifique (5 secondes), passe au fichier suivant lorsque la taille du fichier de capture atteint une certaine taille (1 000 Ko).
# tshark -a filesize:1000 -a duration:5 -a files:5 -w ethcap1
Exemple de nom de fichier de capture de sortie avec la taille :
ethcap1_00001_20090216174203 - 1000K ethcap1_00002_20090216174205 - 1000K ethcap1_00003_20090216174207 - 835K
Autres commandes de capture tshark
Utilisez l'option -c pour capturer les paquets jusqu'à un certain nombre de paquets. L'exemple suivant crée le fichier ethcap1 uniquement avec 10 paquets.
# tshark -c 10 -w ethcap1
Utilisez l'option -r pour lire les paquets réseau à partir d'un fichier compressé.
# tshark -r capture_dump.gz
Utilisez l'option -r pour afficher uniquement des types de paquets spécifiques. L'exemple suivant crée le fichier capture_dump uniquement avec les paquets rtp dans l'analyseur de réseau.
# tshark -R “rtp” -r capture_dump
Utilisez le filtre ci-dessous pour capturer les paquets tcp qui circulent sur le port 1720.
# tshark -f “tcp port 1720”
L'exemple suivant capture les paquets qui arrivent sur le port 1720 ou 1721.
# tshark -f “port 1720 or port 1721” -w capture_dump
Par défaut, tshark utilisera le périphérique eth0 pour effectuer la capture de paquets. Vous pouvez également spécifier un adaptateur Ethernet spécifique en utilisant l'option -i comme indiqué ci-dessous.
# tshark -i eth1 -w -a duration:10 capture_dump
Cet article a été écrit par Balakrishnan Mariyappan. Il travaille chez bk Systems (p) Ltd et souhaite contribuer à l'open source. The Geek Stuff accueille vos conseils et articles invités.