Bonjour !
Je suis confronté à un petit problème ces derniers temps. J'ai pas mal programmé avec les sockets en java, mais dans le cadre d'un réseau local.
Jusqu'ici pas de problème.
Par contre, lorsque je lance un serveur qui écoute sur le port 4444 (par exemple), et que je veux ouvrir une socket dessus depuis chez un pote, je reçois toujours une "ConnectException: Connection timed out".
J'ai pourtant bien fait la redirection de port sur ma box passerelle: le port externe 4444 est bien redirigé vers mon ip locale fixée, sur le port 4444.
Le firewall est également bien configuré (je l'ai éteint à vrai dire) c'est pour ça que je ne comprends pas...
Voici les codes client et serveur:
Code client:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 public static void main(String[] args) throws Exception { Socket socket = null; OutputStreamWriter out = null; socket = new Socket("84.99.xx.xx",4444); // mon adresse ip out = new OutputStreamWriter(socket.getOutputStream()); out.write("test"); out.flush(); out.close(); socket.close(); }
Code serveur:
Je pense avoir zappé un truc, mais je n'arrive pas à trouver ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 public static void main(String[] args) { ServerSocket serverSocket = null; try { serverSocket = new ServerSocket(4444); System.out.println("En attente..."); } catch (IOException e) { System.out.println("Could not listen on port: 4444"); System.exit(-1); } // ............. System.out.println("Fin"); }
Si quelqu'un pouvait me filer un petit indice ça m'aiderait grandement !
Merci :!
Partager