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 :

[résolut]Question sur les sockets pour un proxy ?


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 22
    Par défaut [résolut]Question sur les sockets pour un proxy ?
    Bonjours tous le monde.

    La problématique :
    créer un proxy en C++.

    A : machine client
    B : firewall
    D : machine destination
    C : machine avec le proxy

    mode normal :
    A->B->D

    mode avec le proxy :
    A->B->C->D

    Le but étant de crée un proxy qui va recevoir une connection sur un port définit qui sera une redirection de la part du firewall de la requete de A vers D

    Donc pour cela j'ai besoin de connaitre l'adresse de destination de la connection de A

    C'est une problématique que j'avais déjà réussi à réaliser en python :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    socket (socket recue par le accept)
    data = socket.getsockopt(0, 80, 16)
    server_ip = inet_ntoa(data[4:8])
    server_port = ord(data[2])*256+ord(data[3])
    server_ip et serveur_port me permettant de reouvrir une socket de communication de mon proxy vers le serveur.

    Je n'arrive pas a reproduire cela en C++.

    Je précise que c'est destiné a du linux sans librairie annexe pour les sockets.

    Merci d'avance de vos reponces

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 22
    Par défaut
    Auto reponce pour ceux que ca interesserait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    sockaddr_in test;
    socklen_t taille = sizeof(test);
    getsockname(csock, (struct sockaddr*)&test, &taille);
    std::cout<<inet_ntoa(test.sin_addr);
    csock est le numerot de socket definit par le accept.
    dans test.sin_addr, il y a l'ip de destination.

    Voila

Discussions similaires

  1. [debutant][Client-serveur] Question sur les sockets
    Par skwi6 dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 06/11/2006, 15h04
  2. Question sur les socket AF_UNIX
    Par Mr_Chut dans le forum Réseau
    Réponses: 3
    Dernier message: 10/06/2006, 11h42
  3. Questions sur les socket
    Par lapras123 dans le forum Réseau
    Réponses: 13
    Dernier message: 09/06/2006, 16h34
  4. Encore une petite question sur les sockets...
    Par damien99 dans le forum MFC
    Réponses: 4
    Dernier message: 15/02/2006, 14h22
  5. [WinSock] Question sur les sockets (accept)
    Par Grey dans le forum MFC
    Réponses: 3
    Dernier message: 09/01/2006, 11h37

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