Lire des Trames (UDP), me faut il un sniffer?

aluccard Messages postés 22 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 11 octobre 2007 - 2 juil. 2007 à 16:56
aluccard Messages postés 22 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 11 octobre 2007 - 4 juil. 2007 à 11:21
Bonjour,

ça fait 3 jours que je fais des recherches sur mon petit soucis et j'ai pas trouvé de tuto bien précis la dessus.

Je travail sur le même PC ayant comme IP : 150.0.250.7
Je possède 2 applications qui se connecte entre elles et s'échange des données (c'est de l'UDP)

Je souhaite récupérer des données (ou trames) indiquant leurs connections, leurs échanges, je sais qu'elles existes (trame de start et stop par exemple que je peux voir avec Ethereal).

Je voudrais intégrer dans mon Application Visual Basic ces trames afin de fermer une application lorsque je détecte la trame "Stop" par Exemple.

Est ce que je dois intégrer dans mon application VB ce que l'on appel un "sniffer"? (qui parrait il est assez complexe a mettre en place)

merci d'avance

Thomas G

Visual basic Express 2005 utilisé.

8 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
2 juil. 2007 à 21:15
Tout dépend de ce que tu veux faire exactement.

Si ton application fait partie des 2 aplis qui communiquent ensemble, je pense qu'il suffit d'ouvrir une connection UDP entre les 2 application, il y a tout ce qu'il faut dans VB2005.

Par contre si ton application est une 3eme appli qui doit esionner les échanges que les 2 autres application se font, là oui, je pense qu'il va te falloir mettre en place un sniffer.

Ceci dit je ne maitrise pas non plus le protocole UDP, je n'en connais pas toutes les possibilités.

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #   
0
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
2 juil. 2007 à 21:21
http://www.csharpfr.com/codes/EASY-SOCKET-V3-NETWORK-STUFF_11430.aspx
ca repond a ton pb et c'est du C#, vu que le C# ressemble bcp a vb.net tu peux sois recodé la partie qui t'interesse sois l'integré dans une solution plus grosse vu que le .net suporte les solution multilangage

TeBeCo
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
2 juil. 2007 à 21:28
"...vu que le .net suporte les solution multilangage..."

Pas les version Express je crois. La notion de solution n'existe pas dans les versions Express d'apères ce que j'ai compris.

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #   
0
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
3 juil. 2007 à 07:12
arg :s

TeBeCo
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
aluccard Messages postés 22 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 11 octobre 2007
3 juil. 2007 à 09:54
tout d'abord, merci a vous deux.

en effet, j'ai une apply A qui discute avec une apply B (par exemple, si je ferme l'apply B que j'appel le "CE hote", l'apply A n'arrive plus a le trouver).

en parralèle de ça, j'ai crée une apply en VB (on va dire que c'est l'apply C) dont je voudrais qu'il détecte certaines trames qui discutent entre l'apply A et B pour faire certaines actions.

Exemple :
mon Apply C ferme un exécutable lorsque l'apply A envoi une trame de Stop à l'apply B.

tout ceci se trouve sur le même PC et l'apply A discute avec la B en UDP .

Donc d'apres toi, casy, je vais devoir mettre en place un snifer, si la solution de Tabesco n'est pas applicable sous VB express 2k5.

Cordialement.
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
3 juil. 2007 à 10:11
Comme je t'ai dit, je maitrise pas le protocole UDP. Mais il me semble quand même que c'est un protocole client/serveur, ce n'est pas un protocole de broadcast.

Il fonctionne en gros comme le TCP, il y a un emeteur et un destinataire. Chaque trame est envoyée à un destinataire bien precis. A la différence du TCP ou l'envoie est synchrone, ici l'envoie est aveugle. Rien ne garantie que la trame envoyée par l'emeteur a bien été reçu par le destinataire.

Peut-etre existe-il d'autres solutions, sinon soit tu sniffe les trames, soit si tu as la possibilité, tu viens t'inserer dans la chaine de connection à l'image d'une passerelle. Tu deviens le destinataire de A et l'emeteur pour B. Ton role sera de retransmettre à l'identique ce que tu reçois de manière à etre transparent, libre à toi d'analyser au passage. Une sorte de proxy en fait.

La source donnée par Tabesco est à étudier quand même, car dans les descriptions j'y lis justement : "...(proxy transparent permettant d'agir sur les données transférées)..."

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #   
0
aluccard Messages postés 22 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 11 octobre 2007
3 juil. 2007 à 16:08
Bonjour,

j'ai tenté de récuperer un sniffer
http://www.vbfrance.com/codes/SNIFFEUR-ROUTEUR_40396.aspx
pour voir comment ça fonctionnait mais le soucis est lorsque je tente de l'ouvrir avec VB express 2005, l'assistant de mise a niveau apparait vu que ça parrait etre un projet VB6.0 qui doit etre mis a niveau vers VB 2005 donc je valide ceci et au bout d'un moment, j'ai un echec de la mise a niveau, il arrive pas a charger les composants référencées :
- mswinsck.ocx
- msinet.oxx;
- ......
- etc

et il me recommande d'installer VB6.0 avec tous ces composants donc je ne comprend pas bien cette quesion.

Visual basic 6.0 est bien un langage et non un nom de logiciel? Visual basic 2005 express est suffisant non?

de plus, il m'est impossible de rajouter mswinsck.ocx, j'ai pas la possibilité d'utiliser Winsock ce qui me parrait étrange,

Qu'aurais je oublié?

merci d'avance.
0
aluccard Messages postés 22 Date d'inscription mercredi 30 mai 2007 Statut Membre Dernière intervention 11 octobre 2007
4 juil. 2007 à 11:21
apres des recherches sur le net, je viens d'apprendre un peu a quoi sert les composants ocx et à ce que j'ai comprit, certains composants *.OCX sont payants et pas disponible avec VB express 2005

http://www.garybeene.com/vb/tut-ctrl.htm

et pour le soucis que j'ai  pour lire un projet VB6.0 c'est ici

http://support.microsoft.com/default.aspx?scid=kb;en-us;318597

donc a ma connaissance, il m'est impossible de le faire avec Visual basic 2005 Express Edition, je ne serais pas étonné qu'il faut Visual Studio 2005 ou une version payante.
0
Rejoignez-nous