Estoy tratando de conectarme al servidor usando un socket Java. Estoy tratando de conectar desde el puerto 80 a 90Bloques de socket Java en la conexión a un servidor
int port;
Socket clientsocket;
String hostname = "www.google.com";
for(port = 80;port<=90; port++){
try{
clientsocket = new Socket(hostname,port);
System.out.println("Connection at port " + port + "\t" + clientsocket.isConnected());
clientsocket.close();
}
catch(Exception e){
System.out.println(e.getMessage());
}
}
Cuando intento conectar a cualquier sitio web como google.com o w3schools.com mi programa se cuelga en la llamada socket()
de números de puerto, excepto 80. Desde esos sitios web no están sirviendo en los puertos 81-90, debería elevar la excepción, pero en su lugar se bloquea. Para el puerto 80 funciona bien. Cuando intento conectarme al servidor apache instalado en mi máquina, no bloquea ningún número de puerto y me da error de conexión rechazada, que es el comportamiento obvio. Entonces, ¿por qué está sucediendo? Gracias por adelantado.
un problema similar http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4232651 – Durin
No es su código, incluso telnet www.google.com 81 veces fuera. – lobster1234
@ lobster1234: gracias por la respuesta. el código que escribí arriba es mi código. El enlace al error por supuesto no es mío. – Durin