码迷,mamicode.com
首页 > 其他好文 > 详细

获取各种IP地址

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

标签:style   blog   http   java   color   os   io   for   

  最近做项目,犯了一个低级的错误,把获取客户端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地址

标签:style   blog   http   java   color   os   io   for   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!