Necesito capturar la dirección IP del cliente en mi aplicación GWT/GAE (Java). Como GAE no es compatible con el conjunto completo de API de java.net, no puedo hacer código como el fragmento a continuación. ¿Alguien puede sugerir una forma confiable de lograr lo mismo?Obtención de la dirección IP del cliente en GWT y Google App Engine
for (final Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {
final NetworkInterface intf = en.nextElement();
for (final Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) {
final InetAddress ip = enumIpAddr.nextElement();
if (!ip.isLoopbackAddress() && !ip.isLinkLocalAddress() && !ip.isAnyLocalAddress()) {
return ip.getHostAddress().toString();
}
}
}
Para la versión de Python que uno puede hacer:
os.environ['REMOTE_ADDR']
o
String ip = self.request.remote_addr;
Pero lo que sería un equivalente en Java?
Eso es lo que muestro en mi propia respuesta aceptada – Bostone
vio que, no significa ser presuntuoso. Solo quería señalar la diferencia entre getRemoteAddr y getRemoteHost. – mlkammer