开发者社区 问答 正文

java根据ip判断网络连接情况(i除Java执行ping命令和InetAddress这两种方式)

因为ava执行ping命令和InetAddress这两种方式执行速度太慢了,有没有更好的解决方法???

展开
收起
小旋风柴进 2016-03-17 10:30:51 3579 分享 版权
1 条回答
写回答
取消 提交回答
  • 获得客户端真实IP地址的方法一:

    public String getRemortIP(HttpServletRequest request) {
    if (request.getHeader("x-forwarded-for") == null) {
    return request.getRemoteAddr();
    }
    return request.getHeader("x-forwarded-for");
    }   
    获得客户端真实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;
    }
    2019-07-17 19:04:41
    赞同 展开评论
问答分类:
问答地址: