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 :

Port forwarding en C++


Sujet :

C++

  1. #1
    Membre averti
    Homme Profil pro
    Autodidacte
    Inscrit en
    Janvier 2013
    Messages
    30
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Autodidacte
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 30
    Par d�faut Port forwarding en C++
    Bonjour,
    J'ai d�velopp� un serveur en C++ et je voudrais pouvoir y communiquer avec un client distant cependant il faut que j'ouvre le port du serveur sur l�ext�rieur (port forwarding) mais je n'ai aucune id�e de comment faire en C++.
    Sur internet je ne trouve que des tutos pour ouvrir un port manuellement, moi je voudrais le faire automatiquement de la m�me fa�on que font les logiciels P2P.

    Pouvez vous �clairer svp? Merci d'avance

    PS: Je suis sous Windows

  2. #2
    Inactif  


    Homme Profil pro
    Doctorant s�curit� informatique � Dipl�m� master Droit/�conomie/Gestion
    Inscrit en
    D�cembre 2011
    Messages
    9 026
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 32
    Localisation : France, Loire (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Doctorant s�curit� informatique � Dipl�m� master Droit/�conomie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : D�cembre 2011
    Messages : 9 026
    Par d�faut
    Bonjour,

    Je pr�sume que ton serveur se trouve derri�re une box internet et que tu dois rediriger manuellement des ports de la box vers des ports de ton serveur pour pouvoir acc�der � ton serveur ?
    Or tu souhaiterais pouvoir rediriger automatiquement les ports de ta box ?

    Si oui, la solution serait de faire du "hole punching".

    A moins que tu ne parles d'autoriser � ton serveur � ouvrir le port car il est bloqu� par d�faut par le parefeux Windows ?

  3. #3
    Membre averti
    Homme Profil pro
    Autodidacte
    Inscrit en
    Janvier 2013
    Messages
    30
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Autodidacte
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 30
    Par d�faut
    Merci pour ta r�ponse
    Je ne connaissais pas le hole punching, j'ai recherch� ce que c'�tait et j'ai pu voir que c'�tait pas mal utilis� en r�seau pour le P2P, VoIP, visioconf�rence, etc... Donc cette solution m�int�resse beaucoup et je vais me renseigner sur son fonctionnement

  4. #4
    Inactif  


    Homme Profil pro
    Doctorant s�curit� informatique � Dipl�m� master Droit/�conomie/Gestion
    Inscrit en
    D�cembre 2011
    Messages
    9 026
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 32
    Localisation : France, Loire (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Doctorant s�curit� informatique � Dipl�m� master Droit/�conomie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : D�cembre 2011
    Messages : 9 026
    Par d�faut
    Si tu utilises boost, j'ai un code presque tout fait (moyennant quelques modifications et am�liorations selon tes besoins).

  5. #5
    Membre averti
    Homme Profil pro
    Autodidacte
    Inscrit en
    Janvier 2013
    Messages
    30
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Autodidacte
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 30
    Par d�faut
    Je veux bien le code si tu l'as stp

  6. #6
    Inactif  


    Homme Profil pro
    Doctorant s�curit� informatique � Dipl�m� master Droit/�conomie/Gestion
    Inscrit en
    D�cembre 2011
    Messages
    9 026
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 32
    Localisation : France, Loire (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Doctorant s�curit� informatique � Dipl�m� master Droit/�conomie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : D�cembre 2011
    Messages : 9 026
    Par d�faut
    Je te le donne en pi�ce jointe.

    Si jamais tu corriges des bugs ou fait des modifications, fais-en moi part

    Je n'ai pas eu le temps d'ajouter les commentaires.
    Pour faire simple, j'ai trois postes :
    - Serveur ;
    - Hote ;
    - Client ;

    L�h�te se connecte au serveur et lui donne une cl�e ( 8 octets). Le serveur associe alors � la cl�e l'ip et le port de l�h�te.

    Le client se connecte au serveur et r�cup�re l'ip et le port de l'h�te gr�ce � la cl�.
    Puis il se connecte � l'h�te gr�ce � l'ip et au port donn�.

    Si cela marche, c'est parce que c�t� h�te, on utilise reuse pour �couter le m�me port que pour le socket de communication avec le serveur en attente de connexion entrante. Et comme un socket discute avec le serveur, la box redirige automatiquement un de ses ports vers le port de l'h�te.
    Fichiers attach�s Fichiers attach�s
    • Type de fichier : zip P2P.zip (11,2 Ko, 128 affichages)

  7. #7
    Membre averti
    Homme Profil pro
    Autodidacte
    Inscrit en
    Janvier 2013
    Messages
    30
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activit� : Autodidacte
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 30
    Par d�faut
    Merci
    Citation Envoy� par Neckara
    Si jamais tu corriges des bugs ou fait des modifications, fais-en moi part
    Pas de probl�me

  8. #8
    Membre Expert
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    1 415
    D�tails du profil
    Informations personnelles :
    Localisation : France, Paris (�le de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 415
    Par d�faut
    Salut

    Citation Envoy� par debian21 Voir le message
    moi je voudrais le faire automatiquement de la m�me fa�on que font les logiciels P2P.
    Les logiciels de P2P ne font rien automatiquement, il faut quand m�me rediriger manuellement au moins un port sur la box ! Ce qui arrive sur certaines box, c'est que des plages de ports enti�res soient redirig�es, ou alors la box n'est pas configur�e en NAT parce qu'un seul appareil est branch�, et dans ce cas �a marche tout seul.

    Ton ex�cutable doit aussi avoir le droit d'ouvrir des ports sans que Windows ne l'en emp�che. Les logiciels de P2P peuvent le faire car ils obtiennent ces droits � l'installation, qui n�cessite des droits administrateur.

    Le hole punching est une autre histoire. Il va permettre la redirection automatique de ports, mais il faut bien que le client puisse acc�der au serveur au moins au d�but pour r�cup�rer la cl�, et pour �a il lui faut un port que le serveur �coute et qui a �t� redirig� � l'origine.

  9. #9
    Inactif  


    Homme Profil pro
    Doctorant s�curit� informatique � Dipl�m� master Droit/�conomie/Gestion
    Inscrit en
    D�cembre 2011
    Messages
    9 026
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 32
    Localisation : France, Loire (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Doctorant s�curit� informatique � Dipl�m� master Droit/�conomie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : D�cembre 2011
    Messages : 9 026
    Par d�faut
    @jblecanard : Cela va d�pendre de la structure de ton r�seau P2P, mais P2P n'exclus pas le fait qu'on puisse avoir un petit serveur pour certaines t�ches.

  10. #10
    Membre Expert
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    1 415
    D�tails du profil
    Informations personnelles :
    Localisation : France, Paris (�le de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 415
    Par d�faut
    Citation Envoy� par Neckara Voir le message
    @jblecanard : Cela va d�pendre de la structure de ton r�seau P2P, mais P2P n'exclus pas le fait qu'on puisse avoir un petit serveur pour certaines t�ches.
    Certes oui ! Mais qui dit serveur dit... port pour pouvoir se connecter dessus, non ?

  11. #11
    Membre Expert
    Avatar de white_tentacle
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    1 505
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Par d�faut
    UPNP, non ? On doit pouvoir trouver des biblioth�ques pour �a (si je ne me plante pas, il va simplement falloir annoncer ton service, et le routeur, s�il est configur� pour, cr�era la route correspondante)

    Apr�s, c�est une faille de s�curit�, mais si c�est ce que tu veux faire�

  12. #12
    Membre exp�riment�

    Homme Profil pro
    Etudiant
    Inscrit en
    Juillet 2012
    Messages
    108
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rh�ne (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : Etudiant
    Secteur : High Tech - Produits et services t�l�com et Internet

    Informations forums :
    Inscription : Juillet 2012
    Messages : 108
    Par d�faut
    Mhhh... Concernant le p2p, tu as Openp2p que je viens de voir, qui est une bibliotheque qui est un wrapper de boost asio, fait pour le P2P.

    et l'UPNP je connais mais, je ne pense pas que �a soit l'utilisation ad�quate (je me trompe (?)) mais, comme Neckara la pr�cis� la technique � utiliser est le hole punching. D'ailleurs c'est plus utilis� pour de l'UDP, et beaucoup moins pour du TCP.

  13. #13
    Membre Expert
    Avatar de white_tentacle
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    1 505
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Par d�faut
    L�upnp sert � beaucoup de trucs (encore plus avec l�upnpav, qui est en fait tr�s diff�rent), mais notamment � �a : configurer automatiquement les routes reverse nat.

    Donc je pense que c�est � creuser (il me semble bien que c�est ce qu�utilisent la plupart des logiciels de p2p). Le hole punching, si les deux machines sont nat�es, c�est mort.

  14. #14
    Inactif  


    Homme Profil pro
    Doctorant s�curit� informatique � Dipl�m� master Droit/�conomie/Gestion
    Inscrit en
    D�cembre 2011
    Messages
    9 026
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 32
    Localisation : France, Loire (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : Doctorant s�curit� informatique � Dipl�m� master Droit/�conomie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : D�cembre 2011
    Messages : 9 026
    Par d�faut
    Pour le hole punching, il suffit juste d'avoir une troisi�me machine, et on pourra trouver des serveurs gratuits proposant un tel service dans quelques semaines.

Discussions similaires

  1. Iptables port forwarding
    Par blacksnake dans le forum S�curit�
    R�ponses: 2
    Dernier message: 10/03/2007, 00h09
  2. [Routeur et port forwarding] Simple curiosit�
    Par daladim dans le forum Protocoles
    R�ponses: 8
    Dernier message: 02/12/2006, 15h54
  3. Ipmasqadmin : problème sur le port forwarding
    Par tanjonaravelson dans le forum R�seau
    R�ponses: 2
    Dernier message: 18/11/2005, 13h14
  4. Port forwarding et port triggering
    Par kap dans le forum D�veloppement
    R�ponses: 4
    Dernier message: 25/10/2005, 12h28
  5. Ports forwarding avec iptables
    Par Iced Earth dans le forum R�seau
    R�ponses: 6
    Dernier message: 19/11/2002, 21h24

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