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 :

Bloquer port TCP


Sujet :

C++

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Points : 8
    Points
    8
    Par défaut Bloquer port TCP
    Bonjour,

    Je reçois une connection TCP sur un logiciel, et j'aimerais pouvoir l'interrompre et la reprendre quand je le veux. Donc pour ça j'avais pensé à bloquer/débloquer le port de connection (un peu comme un firewall). Je développe un plugin pour un simulateur de vol (X-Plane 10 --> le logiciel en question) en C++ sous VS 2010.

    Si vous savez comment faire, n'hesitez pas

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Le principe du TCP c'est justement d'être maintenue, je vois pas vraiment pourquoi tu voudrais l'interrompre et la reprendre
    C'est quoi l'idée derrière ça ?
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    J'ai un simulateur qui tourne sur un PC A, et un autre sur un PC B. A controle B, en gros quand je tire sur le manche sur A, B fait la meme chose. Et cette communication est faite en TCP, et ça j'y peux rien, je peux pas changer, c'est le logiciel qui gère.

    Mon but est de pouvoir switcher de esclave à maitre (et repasser esclave après) quand je veux à partir de B sans toucher à A. Je sais c'est tordu mon histoire .

    Donc pour ça j'avais penser à lancer un controle de A vers B et de B vers A (ça je sais faire, propriétés dans le logiciel à configurer) et de bloquer la communication sortante du PC B. Et pour passer maitre, bloquer l'autre communication sortante de A et activer celle de B.

    J'espere avoir été clair

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    734
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 734
    Points : 1 475
    Points
    1 475
    Par défaut
    Pourquoi nécessairement interrompre la connexion? Si tu n'envoies rien dessus ou que tu ignores ce qui en vient, tu fais ton switch au bon niveau sans avoir besoin de "suspendre" ou "reprendre" la connection TCP.
    À moins que tu n'aies pas de contrôle sur le bon niveau en question et sois contraint de bricoler pour contourner cette limitation?

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    Oui le problème est que je n'ai pas de controle sur les données envoyées, et encore moins sur les données permettant l'initialisation de la communication. Ces données sont juste readable, pas moyen d'écrire dessus.

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    tu controles pas l'envoi mais tu peux controler la connection ..?!

    ton truc ça revient à un flag pour dire pause et skip les envois ou la gestion sur réception, pas à hacker TCP
    et comme TCP est déjà un flux bi-directionnel, tu n'a pas à faire A->B et B->A, tu as déjà A<->B

    Si on te demande de faire ça, demande à ce qu'on te donne les outils pour le faire.
    Vouloir bidouiller comme ça, c'est de très loin une mauvaise idée.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  7. #7
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    734
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 734
    Points : 1 475
    Points
    1 475
    Par défaut
    Citation Envoyé par Bousk Voir le message
    comme TCP est déjà un flux bi-directionnel, tu n'a pas à faire A->B et B->A, tu as déjà A<->B
    Il y a peut-être confusion avec le protocole applicatif monté par dessus, qui n'est pas forcément symétrique (ex: HTTP est un système question-réponse, seul le client peut prendre l'initiative d'un échange)
    @nooby: si tu n'as pas le contrôle sur la partie de l'application qui contrôle le lien esclave-maître, ça paraît encore moins gagné d'obtenir des bascules automatique en coupant le lien TCP à la sauvage...par ailleurs je ne sais pas comment fonctionne le protocole qui passe par cette connection TCP, mais de base TCP nécessite des échanges de paquets, alors si tu bloque un sens ça a peu de chances de fonctionner dans l'autre...

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    Non personne me dit de faire ça, c'est juste une idée brillante que j'ai eu
    Oui c'est exactement ça le problème therwald, il doit y avoir une data qui controle le lien esclave-maitre, mais pas moyen d'y avoir accés.

    Mais j'ai trouvé une autre solution, je vais faire moi meme la communication, comme ça je controle tout. C'est juste que j'étais trop feignant pour faire ça, je voulais que le logiciel fasse tout à ma place .


    Le simulateur en question pour les curieux

Discussions similaires

  1. Ecoute d'un port TCP
    Par Fly3R dans le forum Windows Forms
    Réponses: 2
    Dernier message: 31/07/2007, 12h06
  2. [WSS3]Changer le port TCP de ma site collection
    Par virgul dans le forum SharePoint
    Réponses: 2
    Dernier message: 22/06/2007, 09h03
  3. [Port TCP] Port 5070 TCP cassé ?
    Par ced600 dans le forum Développement
    Réponses: 23
    Dernier message: 08/11/2006, 17h24
  4. Bloquer le port TCP 80 pour empêcher la navigation
    Par Andry dans le forum Sécurité
    Réponses: 6
    Dernier message: 22/07/2006, 09h05
  5. [MySQL] lire le contenu d'un port TCP
    Par manaboko dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 03/10/2005, 18h39

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