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

Entrée/Sortie Java Discussion :

Utilisation de sockets et gestion de firewalls


Sujet :

Entrée/Sortie Java

  1. #1
    Membre chevronné
    Avatar de tails
    Homme Profil pro
    Inscrit en
    Novembre 2003
    Messages
    799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 799
    Points : 2 148
    Points
    2 148
    Billets dans le blog
    15
    Par défaut Utilisation de sockets et gestion de firewalls
    Bonjour

    J'ai développé une application java pour jouer aux échecs avec un poste distant en passant l'adresse IP de la machine distante.
    Bien sûr, sur une des machines, on lance le jeu en tant que serveur, et sur l'autre on communique l'adresse ip de la machine faisant office de serveur.

    Mon application

    Par contre, si je teste en lançant deux instances en local, cela fonctionne, mais quand je teste avec mon ami (qui est bien à des kilomètres de mon domicile), la communication ne passe pas (si mes souvenirs sont bons, j'arrive à un timeout car la machine distante n'a pas pu se connecter).

    Je me doute que c'est une histoire de firewall (d'ailleurs nous sommes tous les deux derrière une box internet), mais j'ignore comment résoudre le problème, car j'ai peu de notions en réseaux. Pour information, nous sommes tous les deux sur un OS linux (deux distributions différentes).

    Je pense que cela ne vient pas de mon programme, car nous avons fait le même test avec une appli java récupérée sur Sourceforge, avec le même résultat (cela passe en local, mais pas en mode distant).

    Que dois-je éventuellement configurer pour que ça fonctionne ? Dois-je configurer ma box internet ou simplement mon poste ?

    Sinon je pensais peut être essayer de créer les sockets par le biais d'un programme hébergé qu'il me resterait à développer (je pense donc que je serais forcé de faire du JavaEE) : est-ce une alternative plausible ?

    Je vous remercie d'avance.

  2. #2
    Membre confirmé Avatar de benratti
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    471
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2004
    Messages : 471
    Points : 649
    Points
    649
    Par défaut
    C'est un problème de réseaux ! Vous êtes chacun sur un reseau local et il faut que la box de celui qui lance le serveur, redirige les flux réseaux vers les serveurs, ce qui n'est pas le cas par défaut.

    En simplifier
    [Ton Client] --> BOX1 --> INTERNET --> BOX2 --> [Serveur]

    Pour cela, il te faut :
    *connaitre l'IP publique de la BOX2 pour la configurer sur le serveur
    * configurer ta box2 pour qu'elle puisse faire du port forwarding vers ton serveur, c'est à dire que tout ce qui arrive sur le port XX soit redirigé vers ton serveur.

    Pour cela, un petit tour vers l'interface de ta box2 te permettra de configurer cela.

  3. #3
    Membre chevronné
    Avatar de tails
    Homme Profil pro
    Inscrit en
    Novembre 2003
    Messages
    799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 799
    Points : 2 148
    Points
    2 148
    Billets dans le blog
    15
    Par défaut
    Merci beaucoup pour la réponse claire et limpide

    Je n'ai pas encore pu tester, mais je passe tout de même le sujet en résolu (car je suis persuadé que je parviendrais à configurer ma box au moment voulu).

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Oui enfin... Ça c'était le firewall de BOX2. Maintenant si le serveur est sous linux, il va aussi falloir s'occuper de son firewall à lui.
    Un OS linux typique rejette toutes les tentatives de connexion extérieures qui n'ont pas été configurées pour être autorisées. En gros il faut autoriser les appels entrants au port XX, le même que sur la box et utilisé par le client pour l'appeler.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre confirmé Avatar de benratti
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    471
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2004
    Messages : 471
    Points : 649
    Points
    649
    Par défaut
    J'avais déduit du test en local qu'il testait sur deux machines sur son reseau loca, ce qui signifiait pour moi que le problème du firewall de linux avait été reglé. Si ce n'est pas le cas, il faut effectivement configurer le firewall de linux pour laisser passer les requêtes.

  6. #6
    Membre chevronné
    Avatar de tails
    Homme Profil pro
    Inscrit en
    Novembre 2003
    Messages
    799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 799
    Points : 2 148
    Points
    2 148
    Billets dans le blog
    15
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Oui enfin... Ça c'était le firewall de BOX2. Maintenant si le serveur est sous linux, il va aussi falloir s'occuper de son firewall à lui.
    Un OS linux typique rejette toutes les tentatives de connexion extérieures qui n'ont pas été configurées pour être autorisées. En gros il faut autoriser les appels entrants au port XX, le même que sur la box et utilisé par le client pour l'appeler.
    Citation Envoyé par benratti Voir le message
    J'avais déduit du test en local qu'il testait sur deux machines sur son reseau loca, ce qui signifiait pour moi que le problème du firewall de linux avait été reglé. Si ce n'est pas le cas, il faut effectivement configurer le firewall de linux pour laisser passer les requêtes.
    Je pense que sous Ubuntu cela ne devrait pas être un problème, car la documentation officielle (francophone) indique que le pare-feu existe mais n'est pas activé par défaut.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MFC] Faible utilisation des sockets via les MFC ?
    Par Yellowmat dans le forum MFC
    Réponses: 1
    Dernier message: 25/08/2005, 17h15
  2. récupérer l' IP du client lors d'utilisation de sockets
    Par zegota dans le forum Entrée/Sortie
    Réponses: 7
    Dernier message: 27/07/2005, 22h27
  3. [CF][PPC/VB.NET] Comment utiliser les Socket avec Pocket PC ?
    Par joefou dans le forum Windows Mobile
    Réponses: 5
    Dernier message: 17/05/2005, 14h24
  4. [MFC] Utilisation de sockets
    Par keupon dans le forum MFC
    Réponses: 2
    Dernier message: 28/01/2004, 14h37
  5. utilisation des sockets sous windows
    Par Tupac dans le forum Réseau
    Réponses: 2
    Dernier message: 21/12/2002, 18h24

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