Les cuento que estoy probando aplicaciones cliente servidor en java con la clase Socket y es algo simple mi aplicacion no hace nada productivo el servidor lo unico que hece es mostrar un mensaje que dice escuchando en el puerto 5000, y cuando intento conectarme con el cliente me muestra el mensaje ya se conecto el cliente 10.x.x.x, en cambio el cliente luego de que se conecte solo me dira en un mensaje ya esta conectado con el servidor.
MI aplicacion funciona bien de forma local en la misma maquina, pero cuando intento probarlo en maquinas diferentes no me funciona y me dice que se termino el tiempo de conexion al parecer no hay comunicacion entre las aplicaciones.
Aqui el Codigo para ver si me dan una manito
Código C++:
Ver original
Codigo del Servidor import java.io.*; import java.net.*; public class Servidor1{ public static void main(String[] args){ ServerSocket yo = null; Socket cliente = null; try{ yo = new ServerSocket(5000); } catch (IOException e){ System.out.println(e.getMessage()); } System.out.println("Socket escuchando en puerto 5000"); try{ cliente = yo.accept(); } catch (IOException e){ System.out.println(e.getMessage()); } System.out.println("Ya se conecto el cliente: "+cliente.getInetAddress()); try{ cliente.close(); yo.close(); } catch (IOException e){ System.out.println(e.getMessage()); } } }
Codigo del CLiente
Código C++:
Ver original
import java.io.*; import java.net.*; public class Cliente1{ public static void main(String[] args){ Socket yo = null; try { InetAddress direccion = InetAddress.getLocalHost(); yo = new Socket(direccion,5000); } catch (UnknownHostException e){ System.out.println(e.getMessage()); } catch (IOException e){ System.out.println(e.getMessage()); } System.out.println("Ya se conecto al Servidor"); try { yo.close(); } catch (IOException e){ System.out.println(e.getMessage()); } } }
Hasta Pronto
Espero por sus respuestas...