Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Java (http://www.forosdelweb.com/f45/)
-   -   Identificar IP (http://www.forosdelweb.com/f45/identificar-ip-585538/)

lordmaelwys 12/05/2008 11:19

Identificar IP
 
Hola estimados,

Estoy utilizando en siguiente código para obtener la IP del equipo

Código:

String ip = request.getRemoteAddr();
    try
    {
    InetAddress a = InetAddress.getByName(InetAddress.getLocalHost().getCanonicalHostName());
    out.println("My ip....."+a);
    }
    catch(Exception e);
    {
        e.printStackTrace();
    }

Al ejecutarla en Netbeans la devuelve sin problemas.

Pero al ejecutar la página jsp (hospedada en appserver) desde el browser, me devuelve la IP del APPSERVER.

¿Alguien me podría dar una mano?,

Saludos y gracias.

GreenEyed 12/05/2008 12:07

Re: Identificar IP
 
Lo que te devuelve es lo normal. Esa instrucción sirve para sacar la IP de la maquina donde se ejecuta el programa. Como supongo que no es eso lo que quieres... ¿que es lo que quieres?...

Si, lo mas normal, es sacar la IP de la maquina del cliente que accede a tu aplicacion web, prueba con request.getRemoteHost() o request.getRemoteAddr(). Mira el API de HttpServletRequest para ver todo lo que puedes sacar de ahí.

Si no eso, entonces tendrás que decirnos lo que quieres :-).

S!

lordmaelwys 12/05/2008 12:23

Re: Identificar IP
 
Mi estimado, necesito rescatar la ip del equipo que accede a la pagina

TolaWare 12/05/2008 12:43

Re: Identificar IP
 
Con esta línea:

String ip = request.getRemoteAddr();
obtienes la IP del equipo que accede a la página (o del proxy mediante el cual accede)

lordmaelwys 12/05/2008 12:53

Re: Identificar IP
 
muchas gracias por responder, pero me sigue entregando la ip del appserver y no del usuario que accede a la pagina.

TolaWare 13/05/2008 12:08

Re: Identificar IP
 
Pues estás imprimiendo precisamente la IP del servidor, no la IP del host remoto. Estas líneas hacen precisamente eso:

InetAddress a = InetAddress.getByName(InetAddress.getLocalHost().g etCanonicalHostName());
out.println("My ip....."+a);

Al imprimir la variable, estás imprimiendo la IP de localhost, que es precisamente la del server, y no la del RemoteHost.


La zona horaria es GMT -6. Ahora son las 22:15.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.