Comment faire pour capturer le comte de particulier paquets à l'aide de tcpdump?
Je suis intéressé à obtenir un décompte de tous LDAP/Kerberos/paquets DNS.
J'ai essayé le suivant, mais celui-ci saisit le paquet complet.
tcpdump -i tout -Z racine "port tcp 389 port tcp ou 88 ou le port udp 53" -w ~/ldap_kerberos_dns.cap
Est-il un moyen que je peux le capturer combien ldap/Kerberos/paquets DNS ont été échangés
sans réellement capturer le paquet complet.
Résultat attendu doit être quelque chose comme:
LDAP: 100
Kerberos: 200
UDP: 300
Vous devez vous connecter pour publier un commentaire.
Prendre un coup d'oeil à tshark statistiques:
Voir le l'homme-page pour plus d'informations.
tshark approche
Si vous avez Wireshark (basé sur les question tags, pas la question) puis
tshark
le long des lignes de @blague du commentaire est une façon d'aller, si vous n'avez pas l'esprit de ses détaillé de la sortie stats:Bien que la sortie de la est verbeux, je ne pense pas que vous pouvez obtenir plus près à
tshark
seul. Une autre approche, encore plus détaillé, serait:Ces deux commandes ne pas écrire un fichier de capture. Utiliser Ctrl+C lorsque vous êtes prêt à cesser de fumer, ou voir le commentaire ci-dessous sur
-a
et de l'autostop conditions. Un inconvénient est que ces statistiques s'appuient sur les protocole dissectors, pas la source/destination des ports, donc il peut y avoir des anomalies (par exemple, les connexions avec pas de données ou de contenu non-conforme avec le protocole), "malformé" paquets seront signalés à la place. Cela signifie également que vous n'obtenez pas de résultats fiables si vous optimiser et de capturer seulement 40 octets par paquet ("court" TCP ou UDP paquets seront signalés à la place).tcpdump approche
Un simple, mais peu élégante façon est d'exécuter plusieurs
tcpdump
instances (à supposer bash est un shell) --Les paquets ne sont pas écrites dans un fichier de capture (rejetés par
/dev/null
).Puis attendre que nécessaire, de tuer le
tcpdump
processus (par PID cotées, oukill %1 %2 %3
si pas d'autres tâches en arrière-plan), et d'inspecter le.stats
fichiers:perl approche
Puisque c'est stackoverflow, voici un moyen rapide et sale perl/libpcap solution (juste à ajouter la gestion des erreurs):