获取IP地址

翻译 2015年11月20日 16:19:54

1、获取本机器的IP地址和端口号

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;  
    }


2、获取访问者IP

/**
     * 获取访问者IP
     * <p/>
     * 在一般情况下使用Request.getRemoteAddr()即可,但是经过nginx等反向代理软件后,这个方法会失效。
     * <p/>
     * 本方法先从Header中获取X-Real-IP,如果不存在再从X-Forwarded-For获得第一个IP(用,分割),
     * 如果还不存在则调用Request .getRemoteAddr()。
     *
     * @param request
     * @return
     */
    public static String getIp(HttpServletRequest request) {
        String ip = request.getHeader("X-Real-IP");
        if (!StringUtils.isBlank(ip) && !"unknown".equalsIgnoreCase(ip)) {
            return ip;
        }
        ip = request.getHeader("X-Forwarded-For");
        if (!StringUtils.isBlank(ip) && !"unknown".equalsIgnoreCase(ip)) {
            // 多次反向代理后会有多个IP值,第一个为真实IP。
            int index = ip.indexOf(',');
            if (index != -1) {
                return ip.substring(0, index);
            } else {
                return ip;
            }
        } else {
            return request.getRemoteAddr();
        }
    }


Android获取如何获取当前手机IP地址

public static String getIPAddress(Context context) { NetworkInfo info = ((ConnectivityManage...
  • aiynmimi
  • aiynmimi
  • 2016年09月22日 18:30
  • 20327

html5获取当前用户gps位置、获取用户IP地址并获取ip所在位置

获取用户的gps位置或IP地址
  • GC_YJQ
  • GC_YJQ
  • 2017年02月09日 17:45
  • 2536

解决电脑无法自动获取IP地址

最近一段时间,电脑本地网卡和无线网卡都没法正常获取IP地址,下面给出解决办法~~winxp,win7,win8,win10同样适用~~...
  • yyh352091626
  • yyh352091626
  • 2015年10月12日 09:00
  • 24569

快速获取别人IP地址的4种方法

那么对方的IP地址该如何搜查得到呢?这样的问题你也许会嗤之以鼻,的确,查询对方计算机的IP地址,实在简单得不值得一提;可是,要让你列举出多种IP地址搜查方法时,你可能就感到勉为其难了。下面,本文就对如...
  • qq78069460
  • qq78069460
  • 2016年07月05日 15:41
  • 13977

C# 获取IP地址

一、Asp.Net 获取客户端Ip地址: 参考:http://blog.163.com/m13864039250_1/blog/static/213865248201461221050926/ Asp...
  • u011127019
  • u011127019
  • 2016年11月03日 17:27
  • 1052

Java 通过HttpRequest获取请求用户真实IP地址

在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid,nginx等反向代理软件就不能获取到客...
  • xiaokui_wingfly
  • xiaokui_wingfly
  • 2015年05月21日 10:59
  • 28608

获取android手机当前ip地址

public class NetWorkUtils { /** * 检查网络是否可用 * * @param paramContext * @return */ public...
  • hmily7532361
  • hmily7532361
  • 2014年03月26日 14:42
  • 30222

获取客户端的IP地址的方法

获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是 有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了...
  • zelda002
  • zelda002
  • 2015年05月25日 11:13
  • 5531

JAVA程序 通过IP地址 获取MAC地址

我们都知道通过在电脑上敲 cmd 后,输入ipconfig -all 来获取IP地址或者MAC地址,java程序可以在window和linux下获取MAC地址等信息!看下面代码 import jav...
  • chwshuang
  • chwshuang
  • 2015年07月19日 21:52
  • 4208

jQuery获得客户端/浏览器的IP地址信息

通过http://ipinfo.io网站api获得ip地址的详细信息,实现网站中英文切换。可能还有更多的网站提供ip查询,不过个人觉得http://ipinfo.io比较简单、实用。 jQuery...
  • Jue_2014
  • Jue_2014
  • 2015年02月07日 10:43
  • 4189
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:获取IP地址
举报原因:
原因补充:

(最多只允许输入30个字)