elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Ayuda con Socket en Java
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con Socket en Java  (Leído 5,814 veces)
Droni

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Ayuda con Socket en Java
« en: 28 Febrero 2015, 17:58 pm »

Hola, estoy haciendo un programa con Socket...se manejarlos, no perfectamente pero puedo programarlos para hacer un cliente/servidor que mande textos entre si perfectamente...Bueno la cosa es que ultimamente estoy haciendo un programa pero quiero saber siesque un Socket cliente se puede conectar a cualquier ip que capte...bueno para especificar mas:

Tengo un Servidor esperando la conexion de su Cliente..pero para que el Cliente se conecte al Servidor tengo que especificar la direccion ip del Servidor y su puerto, cuando es instanciado:

Socket miSocket = new Socket("DireccionIp", puerto);

la duda es si esque existe algun metodo para que el Socket obtenga la direccion del Servidor automaticamente o porlomenos un metodo que se conecte a cualquier direccion ip que detecte....
Existe esto???
en caso de no existir...existe alguna clase que permita obtener las IPs de los demas dispositivos conectados a la misma red? no me nombren programas porfavor ya conozco varios pero la idea es hacerlo todo en el mismo codigo...de ante mano muchas gracias :)

Mod: si esto es java, va en java


« Última modificación: 28 Febrero 2015, 18:15 pm por engel lex » En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Ayuda con Socket en Java
« Respuesta #1 en: 28 Febrero 2015, 18:18 pm »

intentalo por multicast o bradcast, es más fácil enviar un mensaje a todos y que un responsable responda a que preguntarle a cada uno


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Usuario Invitado


Desconectado Desconectado

Mensajes: 625



Ver Perfil
Re: Ayuda con Socket en Java
« Respuesta #2 en: 28 Febrero 2015, 19:15 pm »

Buenas tardes.

¿Por qué deseas hacer eso?. Me parece curioso porque normalmete cuando trabajamos con sockets declaramos la IP del servidor y su puerto como constantes porque serán fijos a no ser que se cambie manualmente el IP y el puerto.

¿Para qué necesitas escanear los equipos conectados en el cliente, si se supone que hay un solo servidor por lo que siempre tendras una IP a la cual conectarte?.

Saludos.
En línea

"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
Droni

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: Ayuda con Socket en Java
« Respuesta #3 en: 28 Febrero 2015, 19:38 pm »

Buenas tardes.

¿Por qué deseas hacer eso?. Me parece curioso porque normalmete cuando trabajamos con sockets declaramos la IP del servidor y su puerto como constantes porque serán fijos a no ser que se cambie manualmente el IP y el puerto.

¿Para qué necesitas escanear los equipos conectados en el cliente, si se supone que hay un solo servidor por lo que siempre tendras una IP a la cual conectarte?.

Saludos.

Holaaa, muchas gracias por responder a todos, ya estoy viendo lo de los multi  cast.... Gus bueno te cito ati porque me preguntaste para que quiero hacerlo...pues bien... espero explicarme bien para que puedas entenderlo...

quiero hacer un programa Control Remoto para el pc... Controlandolo desde otro pc (despues sera controlar el pc desde android)...
la cosa es que yo no siempre estoy conectado a la misma red de wifi...por lo tanto no siempre tengo la misma IP en los dos dispositivos...por lo cual tendria que ver cual es la IP del Pc Servidor(el que sera controlado) pero quiero hacerlo sin tener que entrar al CMD de windows y poner ipconfig y ver la direccion ip....esto lo logro con InetAddress en el programa Servidor... ya logre obtener la IP pero al querer enviarla por un Socket hacia el cliente necesito tambien la IP del  PC Cliente entonces ahi esta el drama... tendria que dejar una IP constante que no serviria de nada porque como no siempre estoy en la misma red WIFI no seria constante...de modo que tendria que entrar al PC Servidor y ponerle manualmente la IP del PC Cliente... :/ y bueno ya veras es un drama....realmente nose si esque existe algun otro modo de hacer esto mas facil, aunque no es dificil como yo quiero hacerlo porque ya lo hize pero cuando cambio de wifi ya no sirve.

Por si no entendiste:
1.-El pc servidor obtendra su ip, y la enviara atravez de un Socket al pc cliente
2.-El pc cliente estara esperando que llege la ip del pc servidor atravez de ServerSocket para almacenarla en una variable String.

si te das cueta el necesitara mi ip para enviar atravez de un socket... y es por eso que busco algun metodo para obtener las ips de los dispositivos conectados a la red...para automatizar al programa que pruebe uno por uno....
espero haberme explicado de la mejor manera :) muchas gracias
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Ayuda con Socket en Java
« Respuesta #4 en: 28 Febrero 2015, 20:04 pm »

pero si no estás en la misma red wifi todo está mal...

Citar
El pc servidor obtendra su ip, y la enviara atravez de un Socket al pc cliente

como la va a enviar si no conoce la ip del cliente?

para eso se usa no-ip, así evitas el cambio de ip, y debes en donde está el ordenador controlado, abrir los puertos por donde te conectarás, le configuras noip y listo, de resto lo que intentas, me parece locura... menos más que Gus Garsaky preguntó jejeje
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Droni

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: Ayuda con Socket en Java
« Respuesta #5 en: 28 Febrero 2015, 20:29 pm »

pero si no estás en la misma red wifi todo está mal...

como la va a enviar si no conoce la ip del cliente?

para eso se usa no-ip, así evitas el cambio de ip, y debes en donde está el ordenador controlado, abrir los puertos por donde te conectarás, le configuras noip y listo, de resto lo que intentas, me parece locura... menos más que Gus Garsaky preguntó jejeje

holaa y nnono tu me malinterpretaste...los programas si estaran conectados a la misma red wifi pero lo que me refiero es que no siempre sera la misma red entiendes? por ejemplo ahora los dos programas estan conectados a la red de mi casa y para probar el programa en la casa de un amigo los programas estaran conectados al wifi de la casa de mi amigo entiendes??? y claro obvio que en la casa de mi amigo las ips son distintas
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Ayuda con Socket en Java
« Respuesta #6 en: 28 Febrero 2015, 20:32 pm »

ambos siempre compartiran lan?
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Droni

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: Ayuda con Socket en Java
« Respuesta #7 en: 28 Febrero 2015, 20:37 pm »

ambos siempre compartiran lan?

exacto! :)
En línea

Usuario Invitado


Desconectado Desconectado

Mensajes: 625



Ver Perfil
Re: Ayuda con Socket en Java
« Respuesta #8 en: 28 Febrero 2015, 20:56 pm »

  • Hacer un ping a tu LAN para saber qué equipos están conectados.
  • Obtener el nombre del equipo (getCanonicalName()).
  • Retornar la IP del equipo que coincide con X nombre.

El servidor tendrá un nombre fijo. Los clientes, hacen un ping a LAN donde se va iterando entre todos los dispositivos conectados hasta que haya una concordancia con el nombre del servidor, en éste caso, se devuelve la IP.

Solo tendrías que buscar como hacer el ping a tu LAN. Esto te puede servir: Discover any device in LAN

Salu2.
En línea

"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Ayuda con Socket en Java
« Respuesta #9 en: 28 Febrero 2015, 21:01 pm »

Gus Garsaky sigo creyendo que es mejor el multicast... es mucho trabajo escanear una lan (que no sabes que tan grande es)... es más facil tirar un solo paquete que llegue a todos los dispositivos conectados y que el servidor responda a la ip que tiró la peticion (un unicast normal a la ip) no necesitaría averiguar la ip, ya que solo tiene que leer el remote address
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Socket Java
Java
juancho77 7 11,129 Último mensaje 5 Marzo 2009, 19:45 pm
por genco
Ayuda Socket RAW en java (host al que me ayude xd)
Java
demosdm 4 4,803 Último mensaje 16 Diciembre 2010, 17:22 pm
por demosdm
Como usar Socket en java..!!
Java
HackerJack 6 8,979 Último mensaje 1 Agosto 2012, 13:12 pm
por reylagarto19
Socket y Java
Java
abi-ds 2 2,673 Último mensaje 8 Febrero 2012, 16:52 pm
por abi-ds
Socket java Servidor Cliente
Java
momo1234 2 4,187 Último mensaje 12 Mayo 2012, 16:57 pm
por momo1234
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines