none
Recherche d'un Serveur socket par un Client (Broadcast ?) RRS feed

  • Question

  • Bonjour, je recherche une solution simple et efficace qui permettrai à une application Client (connaissant que le port du socket) de trouver l'adresse IP (local) de l'application Serveur :

    Hypothèse de protocol :

     - Le serveur est en attente d'un client; (Application Serveur pouvant être lancée sur n'importe quelle machine du réseau donc adresse IP de connexion inconnu.)
     - Le client cherche l'adresse IP de l'application Serveur;
     - Le serveur répond au client que c'est le bon serveur;
     - Alors le client se connecte au bon serveur avec l'adresse IP correcte.

    PS : Je voudrais faire un peu comme Windows lors de la recherche d'imprimantes sur le réseau, il scan et il liste les imprimantes connectées. Ici Windows c'est l'application Client et l'imprimante l'application Serveur.

    Cordialement, DanielRadS31.
    • Modifié Apyn AOM dimanche 6 avril 2014 09:07
    dimanche 6 avril 2014 09:06

Réponses

  • Bonjour,

    C'est très simple, il suffit d'envoyer un paquet en broacast (dépend du masque réseau), par exemple pour un PC 192.168.1.1 sous un réseau 255.255.255.0 il suffit d'envoyer des données sur l'adresse 192.168.1.255.

    Il faut bien évidemment que votre serveur soit en écoute de votre message de broadcast et qu'il renvoi son adresse IP afin que le client sache qu'un serveur existe et sur quel IP.

    Vous avez un exemple ici : http://www.nullskull.com/a/1551/clientserver-autodiscovery-in-c-and-udp-sockets.aspx

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte logiciel/Consultant/Formateur Freelance - P.O.S Informatique
    Blog : http://gilles.tourreau.fr - Suivez-moi sur Twitter
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5/4.0
    - MCSA : SQL Server 2012
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5/4.0 / TFS 2010 / Windows Azure

    • Proposé comme réponse Aurel Bera lundi 7 avril 2014 07:36
    • Marqué comme réponse Aurel Bera vendredi 11 avril 2014 05:17
    dimanche 6 avril 2014 22:25
    Modérateur

Toutes les réponses