如题....
自己写了一个方法,测试在其他机子上登陆,结果获得的IP竟然却是自己本机(web部署pc)上的IP?
不知我下面的代码哪里错了,请指教...
public String getIp(){
     log.info("获取IP地址!");
     String ip=null;
     try{
         String info=InetAddress.getLocalHost().toString();
         int n=info.lastIndexOf("/");
         ip=info.substring(n+1);
        }catch(Exception e){
         log.info(e.getStackTrace());
        }
        System.out.println("----------- "+ip);
        return ip;
    }

解决方案 »

  1.   

    String ip = "";   
    ip = request.getRemoteAddr();
      

  2.   

    request.getRemoteAddr();开玩笑啦,我写着玩的,不要给我分了,给上面两位吧
      

  3.   

    ip = request.getRemoteAddr();
      

  4.   

    InetAddress.getLocalHost()运行此程序的机器ip,就是服务器了
      

  5.   

    InetAddress.getLocalHost() 这肯定获取的是本机IP
    request对象中包含有用户IP,客户端的信息都在这里面
      

  6.   

    public static void main(String[] args) throws UnknownHostException {
    System.out.println(InetAddress.getLocalHost());
    }这样就OK了啊。把获取的存到数据库就完了.