Si je veux écrire un script qui utilise la fonctionnalité de Wireshark, j'utilise Tshark. J'entends aussi une libwellerie qui peut être utilisée lors de la rédaction d'un programme en C mais, pour la vie de moi, je ne peux pas trouver aucune documentation em> pour cela! J'ai essayé d'isoler le code de la bibliothèque dans l'arborescence source Wireshark, mais il semble que le code n'est pas très bien organisé et que cet isolement n'existe pas (soit cela, ni je n'ai pas réussi à le trouver). P>
J'ai deux questions: p>
4 Réponses :
Même si j'ai écrit des scripts pour la fonctionnalité Wireshark dans le cadre de mon projet d'automatisation de certaines choses. P>
Le meilleur à faire est d'utiliser des addons Wireshark comme suit: P>
Veuillez noter que les add-ons du travail uniquement sous Linux et Capinfos est écrit dans le script Shell. Vous pouvez donc utiliser les mêmes scripts Shell et créer de nouveaux scripts pour une meilleure fonctionnalité. P>
Même j'avais été confrontés à beaucoup de problèmes au départ car il n'y a pas de documentation appropriée. Mais une fois que vous avez commencé, cela se passe bien. P>
Je ne sais pas ce que vous entendez par "Add-Ons", mais des plugins, et même des changements à la source de Wireshark, fonctionnent bien sur les autres ONU * xes et sous Windows, comme par exemple, par exemple, des add-ons Lua. Aussi, Capinfos est écrit en C; Ce n'est pas un script shell.
Salut pouvez-vous partager votre expérience?
Libwirshark n'est pas destiné à être utilisé en dehors de Wireshark lui-même, et à essayer de le faire, vous laissera votre sur votre propre pour essayer de comprendre ce qui se passe mal. Libwiraishark fait effectivement une partie de la partie des paquets analysant la partie de Wireshark (appelée epan em> pour e strong> ereal Pa fort> CKET ALYZER FORT> ALYZER), que vous pouvez voir Dans le Guide du développeur n'est pas tous de Wireshark. Ce que LibwirShark fournit en fait est l'interface principale de tous les distincteurs de protocole intégrés, des crochets pour les distincteurs de plug-in et l'API de dissection de paquets complets. Il repose sur les machines mis en place par le reste de Wireshark pour des outils qui ne sont pas directement des outils de dissection de paquets, mais permettent aux distincteurs de faire leur travail (par exemple, allouer des morceaux de mémoire de distribution, gérer des données comprimées ou cryptées, etc.). P >
Écrire un dissecteur à la place. Si vous voulez vraiment, vraiment em> veux utiliser LibwirShark directement, vous devrez résoudre toutes ses dépendances en quelque sorte (de préférence en faisant une bibliothèque autonome) et prévoir les hypothèses qu'il fait sur Wireshark (ou Tshark) en cours d'exécution. Le code de Libwirshark est tout bien organisé, il est juste qu'il consiste en tout répertoire EPAN dans l'arborescence source Wireshark et est disposé en fonction des conventions établies lorsque Wireshark était toujours éthéré. La documentation de chaque fonction est fournie dans les fichiers d'en-tête lorsqu'il est publiquement visible, et plus profondément dans les fichiers source dans tous les cas. N'oubliez pas également que le README .Developer distribué avec la version du code source que vous avez est un bon endroit pour obtenir quelques astuces (et vous pouvez aussi bien lire tous les fichiers Readme. * Si vous souhaitez entreprendre cette tâche). p>
Si votre projet doit analyser strictement le trafic réseau d'une manière ou d'une autre, vous voudrez peut-être envisager d'écrire un dissecteur pour WireShark plutôt que de réinventer les nombreuses roues que Wirehark pourraient vous fournir. Si vous devez faire quelque chose de plus complexe, comme surveiller le trafic réseau, puis lancez d'autres tâches ou envoyer des données vous-même, vous êtes probablement mieux à utiliser TSHARK code> et shell Scripting comme vous êtes déjà (gardez à l'esprit que Vous ne devriez pas laisser
tshark code> courir pendant des périodes extrêmement longues dans tous les cas). P>
Merci. Cela explique beaucoup et me donne de la nourriture à la pensée. Je ne pense pas que je puisse écrire un dissecteur pour ce travail, cependant. J'ai besoin d'extraire des flux RTP (entre autres) et j'ai vu que Wireshark peut répertorier les flux et même extraire des données audio de leur part. Non seulement écrire un dissecteur ne aide pas à cela pour cela, même à l'origine de Tshark seul ne suffit pas. Le meilleur que je puisse faire est de courir TSHARK et d'obtenir des suggestions sur les flux, puis faites la dissection de paquets et l'extraction audio moi-même. Pouvez-vous penser à une meilleure approche? Et pourquoi ne devrais-je pas courir Tshark pendant des périodes extrêmement longues?
Wireshark (and Tshark) sera Exploiter de la mémoire après un tandis que. En utilisant DUTPCAP directement mieux pour les captures de longue opération, bien que vous ayez raison : Vous aurez toujours besoin de faire un post-traitement. Je n'ai pas beaucoup fait avec RTP moi-même, mais si vous demandez au Site Q & A Wireshark directement, quelqu'un qui sait plus à ce sujet est plus susceptible de le voir et éventuellement pouvoir aider.
Mais BUTPCAP est seulement pour capturer des paquets, n'est-ce pas? Je ne suis intéressé que par Wireshark pour ses capacités de dissection. libpcap (et donc WireShark / Tshark) n'est pas capable de résister aux charges que je travaille. Quoi qu'il en soit, je pense que je vais essayer un exemple plus précis sur le site Q & A Wireshark et espérer que quelqu'un puisse aider. Merci encore.
Oui! Vous pouvez obtenir cette fonctionnalité en utilisant libwwirehark. J'ai écrit du code entier pour faire la même chose. Cela fonctionne simplement bien. p>
par code je voulais dire..code non scripts, en utilisant libwirehark, j'ai écrit du code complet C ++ pour capturer et disséquer les paquets réseau !.
Pouvez-vous fournir un exemple sur la manière dont vous avez utilisé votre code C ++ @ sammy.d
Salut pouvez-vous partager votre expérience?
Il est certainement possible d'utiliser LibwirShark en dehors de Wireshark lui-même, comme je sais NetExpect fait exactement cela. Vous pouvez essayer de rechercher sur le site Web de ce projet pour plus d'informations ou vous pouvez essayer de contacter Eloy Paris, l'auteur de NetExpective, pour d'autres entrées / pointeurs. P>
Salut pouvez-vous partager votre expérience?
Juste parce que quelque chose a «lib» devant cela ne signifie pas nécessairement que c'est apte à la consommation de masse.
Vrai. Donc, votre point est-il, "n'en pensez même pas"?
Non, mon point est que cela peut ne pas être bien documenté ... parce que ce n'est pas bien documenté. Vous êtes peut-être dirigé vers un territoire inexploré. Si cela vaut la peine pour vous, puis plongez dans. Espérons-le, je me trompe, je dis simplement que je ne me tiens pas la respiration pour un bon tutoriel ou quelque chose comme ça.
Je ne m'attendais pas vraiment à une vaste documentation qui se cache quelque part. Je suis plutôt bon pour trouver des choses sur Internet! Ce que j'espérais en publier cette question était que peut-être qu'il y a un peu d'information adolescent quelque part qui peut soulager ma douleur un peu!
J'espère que quelqu'un ici a cela pour vous, Dieu sait que je ne fais pas :)
Qu'essayez-vous de résoudre? Si c n'est pas une contrainte difficile, consultez bro , "le python / rubis pour le réseau . "
C n'est pas une contrainte difficile, mais la performance est (ou du moins pourrait être à l'avenir). Je préfère moi-même python chaque fois que je peux l'utiliser, mais cela pourrait être moins attrayant dans ce projet. J'aimerais toujours vérifier. La principale chose que je veux réaliser est d'extraire des flux de voix RTP. Wireshark elle-même peut le faire (Analyse de la téléphonie / RTP / Stream ...), mais Tshark ne semble pas être capable de le faire. Pensez-vous que Bro peut y parvenir? Je n'arrive pas à trouver beaucoup de choses liées à Python sur leur site Web.