BandaAncha

  • 🔍 en 📰 artículos ⏎
  • 🔍 en 💬 foros ⏎
  • 🔍 en 👇 este 💬 foro ⏎
  • 🔍 en 👇 este 💬 tema ⏎
Regístrate Regístrate Identifícate Identifícate

Conexión tcp ip java

BocaDePez

Hola.

Estoy intentando hacer una conexión básica con socket tcp/ip entre dos equipos de mi misma red y me da el siguiente error al intentar enviar datos el cliente ( el servidor no da error ) :

java.net.ConnectException : Connection refused : connect

Lo curioso es que en UDP sí que funciona perfectamente. He probado desactivando firewall en ambos así como antivirus y abriendo puertos en mi router comtrend de telefónica pero nada.

Pego aquí el código cliente pero me temo que está bien. Qué puede ser ?? Alguien puede ayudarme ??

GRACIAS

package j_wifi;

/**
*
* @author Javier
*/
import java.awt.*;
import java.net.*;
import java.io.*;

class minimoCliente {
public static void main( String args[] ) throws IOException {

InetAddress direcc = null;
try{
direcc = InetAddress.getLocalHost();
} catch(UnknownHostException uhe){
System.err.println("Host no encontrado : " + uhe);
System.exit(-1);
}

// Puerto que hemos usado para el servidor
int puerto = 5001;

// Para cada uno de los argumentos...

Socket sckt = null;
DataInputStream dis = null;
DataOutputStream dos = null;
try{

// Convertimos el texto en número
int numero = 5;

// Creamos el Socket

System.out.println("Direccion "+direcc+"\n");
sckt = new Socket("Javier1",puerto);

// Extraemos los streams de entrada y salida
dis = new DataInputStream(sckt.getInputStream());

dos = new DataOutputStream(sckt.getOutputStream());

// Lo escribimos
System.out.println("Lo escribimos\n");
dos.writeInt(numero);

// Leemos el resultado final

long resultado = dis.readLong();

// Indicamos en pantalla
System.out.println( "Solicitud = " + numero +
"\tResultado = " +resultado );
// y cerramos los streams y el socket
dis.close();
dos.close();
} catch(Exception e){
System.err.println("Se ha producido la excepción : " +e);
}

try{
if (sckt!=null) sckt.close();
} catch(IOException ioe){
System.err.println("Error al cerrar el socket : " + ioe);
}

}
}

GRACIAS

Frankie2004

Yo no tengo absolutamente ni idea de Java, pero prueba a cambiar el nombre de destino "Javier1" por su FQDN o su IP, a ver ...

🗨️ 9
BocaDePez

Nada, todo igual .

Yo creo que es problema de seguridad del router

🗨️ 8
Frankie2004

¿Pero no has dicho que estaban en la misma red? ¿Qué pinta el router ahí, si no se pasa por él?

🗨️ 7
djnacho

¿Ein? No veo nada en el post del usuario que indique que no está usando un router :-/

No tengo ni idea de Java, pero...., el connection refused es porque el host Javier1 no permite la conexión del cliente por el puerto especificado, lo cual indica que algo falla, ya que el cliente no es capaz de conectarse al servidor por el puerto especificado. El usuario, debería mirar el código fuente del servidor, para ver si el problema viene de escribir mal el puerto de acceso, o bien, que no se hayan activado las opciones correspondientes a servidor (no se si esto será posible en Java, como comento, no tengo ni idea, pero un connection refused, quiere decir, que el servidor no acepta la conexión del cliente).

Un saludo :)

🗨️ 6
Frankie2004
Frankie2004
🗨️ 5
djnacho
djnacho
🗨️ 4
Frankie2004
Frankie2004
🗨️ 3
BocaDePez
BocaDePez
🗨️ 2
Frankie2004
Frankie2004
🗨️ 1