首页 > 其他 > 详细

获取各种IP地址

时间:2014-07-24 21:21:56      阅读:291      评论:0      收藏:0      [点我收藏+]

  最近做项目,犯了一个低级的错误,把获取客户端Ip当成获取本机IP了,被训的很厉害了,哎,是啊,怪自己太笨了,活该啊。

  java 获取客户端真实IP地址的方法:

public String getIpAddr(HttpServletRequest request) {  
       String ip = request.getHeader("x-forwarded-for");  
       if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {  
           ip = request.getHeader("Proxy-Client-IP");  
       }  
       if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {  
           ip = request.getHeader("WL-Proxy-Client-IP");  
       }  
       if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {  
           ip = request.getRemoteAddr();  
       }  
       return ip;  
   } 

 

 java获取本机的IP和主机名

import java.net.InetAddress;  
import java.net.UnknownHostException;  
import java.util.Properties;  
import java.util.Set;  
  
  
public class TestSystemProperties {  
  
    public static void main(String [] args){  
        InetAddress netAddress = getInetAddress();  
        System.out.println("host ip:" + getHostIp(netAddress));  
        System.out.println("host name:" + getHostName(netAddress));  
        Properties properties = System.getProperties();  
        Set<String> set = properties.stringPropertyNames(); //获取java虚拟机和系统的信息。  
        for(String name : set){  
            System.out.println(name + ":" + properties.getProperty(name));  
        }  
    }  
  
    public static InetAddress getInetAddress(){  
  
        try{  
            return InetAddress.getLocalHost();  
        }catch(UnknownHostException e){  
            System.out.println("unknown host!");  
        }  
        return null;  
  
    }  
  
    public static String getHostIp(InetAddress netAddress){  
        if(null == netAddress){  
            return null;  
        }  
        String ip = netAddress.getHostAddress(); //get the ip address  
        return ip;  
    }  
  
    public static String getHostName(InetAddress netAddress){  
        if(null == netAddress){  
            return null;  
        }  
        String name = netAddress.getHostName(); //get the host address  
        return name;  
    }  
  
}  

 

 

获取各种IP地址,布布扣,bubuko.com

获取各种IP地址

原文:http://www.cnblogs.com/liqing0045/p/3865786.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!