2009-08-11 14 views

Répondre

6
<% 
    out.print(request.getRemoteAddr()); 
    out. print(request.getRemoteHost()); 
%> 
  • request.getRemoteAddr() retour ip adresse de la machine où vous accéder à la page jsp.
  • request.getRemoteHost() renvoie le nom de l'hôte à partir duquel vous êtes accédant à la page jsp. Si vous accédez au à partir du serveur lui-même, le nom du serveur sera .

Si le client se trouve derrière un proxy, ce qui précède ne sont pas utiles que vous obtiendrez l'adresse IP du proxy, ils sont derrière, essayez la place:

<% 
    out.print(request.getHeader("x-forwarded-for")); 
%> 
+2

+1 pour request.getHeader ("x-forwarded-for") – firstthumb

+0

Est-ce que x-forwarded-pour toujours fonctionner? En outre, je ne pense pas que cela aidera si le client est de l'autre côté d'un périphérique qui effectue la traduction d'adresses réseau. –

+1

Sachez qu'il s'agit d'un en-tête standard non RFC (préfixe "x-"). – rodrigoap

6

Vos méthodes sont correctes. Je suppose que vous y accédez sur localhost et donc sur l'interface de bouclage. Les numéros que vous voyez sont les adresses IP IPv6 de votre interface de bouclage.

Essayer de le tirer d'une autre machine.

+0

C'est exactement l'information dont j'avais besoin, merci. –

Questions connexes