IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

[C#2.0] Comment écouter un port ?


Sujet :

C#

  1. #1
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 294
    Billets dans le blog
    2
    Par défaut [C#2.0] Comment écouter un port ?
    Bonjour à tous,

    mon appli doit tourner sous windows (pas de contraintes de portabilité), et je développe sous visual 2005.

    je voudrais faire un 'démon' qui écoute tout ce qui se passe sur un port donné. C'est à dire que je voudrais récupérer les trames sous forme de chaine de caratère pour pouvoir les traiter ensuite. Le protocole est connu (TCP), mais je ne connais pas l'IP de la machine qui envoie les données sur le port (en fait, il y en aura plusieurs).

    Déjà, est-ce possible? Si oui, est-ce difficile? Et enfin, comment faire?

    Merci

    ps: je suis nul en dev réseau et je connais trés mal le .Net, donc soyez indulgents

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    262
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 262
    Par défaut
    Salut,

    en gros tu veux faire un serveur ?

  3. #3
    Membre éclairé
    Inscrit en
    Août 2006
    Messages
    381
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 381
    Par défaut
    Je ne l'ai jamais fait, mais voilà les infos que j'ai pu trouvé.
    J'imagine que tu es déjà allé sur le site MSDN mais au cas où, voici deux liens avec des exemples:

    System.Net.NetworkInformation, espace de noms

    IPGlobalProperties, classe

    IPGlobalStatistics, classe

    Bye

  4. #4
    Membre éclairé
    Inscrit en
    Août 2006
    Messages
    381
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 381
    Par défaut
    Non, en fait, je ne suis pas sûr que ça t'aidera.
    Bon je continue de chercher parce que ça m'interesse aussi.

    Bye

  5. #5
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 294
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par toxycyty
    en gros tu veux faire un serveur ?
    Non, un simple sniffer.

    Je ne l'ai jamais fait, mais voilà les infos que j'ai pu trouvé.
    J'imagine que tu es déjà allé sur le site MSDN mais au cas où, voici deux liens avec des exemples:

    System.Net.NetworkInformation, espace de noms

    IPGlobalProperties, classe

    IPGlobalStatistics, classe
    Ok, j'irais voir ça dès que possible. Je n'aurais pas le temps aujourd'hui. Merci pour les liens

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Août 2003
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 59
    Par défaut
    Pour faire un snifer, tu dois mettre ta carte réseau en mode "promiscuous", pour qu'elle réceptionne aussi les paquets qui ne lui sont pas destinés, puis analyser les paquets reçus.

    .NET ne te permet pas de faire cela. Java non plus d'ailleurs.

    Par contre, tu peux utiliser, via .NET, la librairie WinPCap (http://www.winpcap.org/). C'est la seule que je connaisse pour Windows capable de faire des captures de paquet en mode "promiscuous". Elle est notamment utilisée par le très célèbre et excellent Ethereal (http://www.ethereal.com).

    Bon courage,
    @ +

    PS: évidemment, la capture est limitée au réseau desservi par un hub. Au delà du premier routeur ou du premier switch rencontré, ça va être nettement plus dur .

  7. #7
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 294
    Billets dans le blog
    2
    Par défaut
    Ok, je vais voir ça.

    Cela dit, je n'ai pas besoin du mode "promiscuous" car je n'ai besoin que de récupérer les paquets qui me sont destiné...


  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Août 2003
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 59
    Par défaut
    Citation Envoyé par r0d
    Cela dit, je n'ai pas besoin du mode "promiscuous" car je n'ai besoin que de récupérer les paquets qui me sont destiné...
    Effectivement, mais à mon avis winpcap sera quand même nécessaire (en tout cas sous Java c'est sûr), vu que ton appli n'est pas la destinataire finale des paquets.

    @ +

Discussions similaires

  1. Réponses: 3
    Dernier message: 20/12/2013, 10h08
  2. Comment écouter un port série avec flash ?
    Par Alex01 dans le forum Flash
    Réponses: 11
    Dernier message: 07/10/2005, 16h11
  3. Comment écrire sur le port parallèle ?
    Par trax44 dans le forum Assembleur
    Réponses: 11
    Dernier message: 21/08/2005, 22h53
  4. Comment travailler avec le port IEEE 1394?
    Par Cornejito dans le forum MFC
    Réponses: 6
    Dernier message: 04/05/2005, 14h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo