默认情况下,当一个web应用程序调用请求时,DNS查询是可行的。这将对性能造成一些不利的影响,因此,你可以将“enableLookups”设置为“false”来关闭DNS查询。当DNS查询被关闭时,request.getRemoteHost()将返回包含远程客户IP地址的字符串。

解决方案 »

  1.   

    TyroneChan(油亮脖子金黃腳)说的正确
      

  2.   

    request.getRemoteHost()是用来获取访问者ip的,你从本机访问自己的web,自然就是127.0.0.1了
    如果从网络上的其他机器访问,就可以获取访问者的ip
    至于自己机器的ip,好象没用到过相应的方法,等待高手出现
    不过web服务器一般只关心监听本机的某个端口,对本机的外网ip应该是不关心的,不知道你要这个ip干嘛
      

  3.   

    import java.net.*;public class iplabel {
    String ip, address;
    public void getip() {
    try {
    InetAddress addr = InetAddress.getLocalHost();
    ip = addr.getHostAddress().toString();//获得本机IP
    address = addr.getHostName().toString();//获得本机名称
    //System.out.println("addr=:"+String.valueOf(addr));
    } catch (Exception e) {
    }
    } public static void main(String agrs[]) {
    iplabel myip = new iplabel();
    myip.getip();
    System.out.println(myip.ip);
    System.out.println(myip.address); }
    }搞定