java 获取请求ip,服务本地ip】的更多相关文章

整理网友的材料,最后有源码,亲测能解决所有java获取IP真实地址的问题 整理的这里: 1.链接1 2.链接2 JSP里,获取客户端的IP地址的方法是: request.getRemoteAddr() ,这种方法在大部分情况下都是有效的.但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了. 如果使用了反向代理软件,将 http://192.168.1.110:2046/ 的URL反向代理为 http://www.javapeixun.com.cn / 的URL时…
在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的.但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了. 如果使用了反向代理软件,将http://192.168.1.110:2046/ 的URL反向代理为 http://www.javapeixun.com.cn / 的URL时,用request.getRemoteAddr()方法获取的IP地址是:127.0.0.1 或 192.168.1.…
转载自:http://leiyongping88.iteye.com/blog/1545930 用request.getRemoteAddr();方法获取的IP地址是:127.0.0.1或192.168.0.66,而并不是客户端的真实IP.经过代理以后,由于在客户端和服务之间增加了中间层,因此服务器无法直接拿到客户端的IP,服务器端应用也无法直接通过转发请求的地址返回给客户端.但是在转发请求的HTTP头信息中,增加了X-FORWARDED-FOR信息用以跟踪原有的客户端IP地址和原来客户端请求的…
  js 获取请求网络协议.IP.端口号.项目名称 CreationTime--2018年6月19日15点54分 Author:Marydon /** * 获取url请求前缀 * @return http://127.0.0.1/demo */ function getRequestPrefix () { // 获取网络协议 var protocol = window.location.protocol; // 获取主机名+端口号 var domainPort = window.location…
/** * 获取请求IP * * @param request * @return */ public static String getRequestIpAddress(HttpServletRequest request) { String ipAddress = null; ipAddress = request.getHeader("X-Real_IP"); // if (StringUtils.isEmpty(ipAddress) || StringUtils.isBlank…
  JavaWeb 获取请求网络协议.IP.端口号.项目根路径 CreateTime--2018年6月1日16点32分 Author:Marydon 1.需求 在项目中,需要使用Java向本程序发送request请求,由于项目的发布名称.部署IP和端口不固定, 如何才能动态获取这些信息呢? 2.代码实现 import javax.servlet.http.HttpServletRequest; /** * 获取url请求前缀 * @explain http://localhost:8080/te…
java获取本机名称.IP.MAC地址和网卡名称 摘自:https://blog.csdn.net/Dai_Haijiao/article/details/80364370 2018年05月18日 14:53:19 阅读数:134 import java.net.InetAddress; import java.net.NetworkInterface; public class IpConfig { @SuppressWarnings("static-access") public…
private static final String[] ADDR_HEADER = { "X-Forwarded-For", "Proxy-Client-IP", "WL-Proxy-Client-IP", "X-Real-IP" }; private static final String NUKNOWN = "unknown"; /** * 获得真实IP地址. * 在使用了反向代理时,直接用Http…
一般情况下 getRemoteAddr()是可以正常使用的,代码如下: public String getIpAdress(HttpServletRequest request) { ip = request.getRemoteAddr(); return ip; } 但是针对IP是否使用代理访问进行处理,如下: public String getIpAdress() { RequestAttributes requestAttributes = RequestContextHolder.get…
在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的.但是在通过了 Apache,Nagix等反向代理软件就不能获取到客户端的真实IP地址了.如果使用了反向代理软件,用 request.getRemoteAddr()方法获取的IP地址是:127.0.0.1或 192.168.1.110,而并不是客户端的真实IP.  经过代理以后,由于在客户端和服务之间增加了中间层,因此服务器无法直接拿到客户端的 IP,服务器端应用也无法直接通…
网络攻击 前不久公司遭受了一次网络攻击. 早晨刚到公司,就发现登录接口的调用次数飙升,很快就确认是被恶意攻击,让安全部门做网关入口针对对方 IP 加了限制. 并统一对所有的 IP 加了调用的频率限制. 登录 基本每一家公司都会有登录接口,然而无论大小,多少都会存在一些问题. 最核心的准则这里稍微提一下,以后有机会展开: (1)密码一定要加密存储(而且不能是简单的 MD5),日志一定要脱敏. (2)登录接口一定要添加验证码,防止接口被恶意调用的第一步 (3)禁止用户使用弱口令,弱口令字典可自行 g…
/** * 获取访问者内网IP * @return the server ip */ public static String getIntranetIp() { // 本地IP,如果没有配置外网IP则返回它 String localip = null; // 外网IP String netip = null; try { Enumeration netInterfaces = NetworkInterface.getNetworkInterfaces(); InetAddress ip = n…
package com.Interface.util; import javax.servlet.http.HttpServletRequest; /** * 测试类 * * @author 华文 * @date 2019年7月5日 * @version 1.0 */ public class Test { /** * 获取当前公网ip */ public static String getIpAddr(HttpServletRequest request) { String ip = requ…
/** * 获取访问用户的客户端IP(适用于公网与局域网). */ public static final String getIpAddr(final HttpServletRequest request) throws Exception { if (request == null) { throw (new Exception("getIpAddr method HttpServletRequest Object is null")); } String ipString = r…
1.获取全路径request.getRequestURL(); //得到http://localhost:8888/CRM/loginController/login 2.获取协议名和域名request.getScheme(); //得到协议名 例如:httprequest.getServerName(); //得到域名 localhost 3.获取请求所有参数 //map类型request.getParameterMap() 4.获取项目名request.getContextPath(); /…
主要涉及NetworkInterface.Enumeration.InetAddress等类 /* 获取本机网内地址 */ public static InetAddress getInet4Address(){ try { //获取所有网络接口 Enumeration<NetworkInterface> allNetworkInterfaces = NetworkInterface.getNetworkInterfaces(); //遍历所有网络接口 for(;allNetworkInter…
使用java.net包下的URL类,可以将一个网页(链接)封装成一个URL对象. URL对象有一个openStream()方法,使用该方法可以获取该网页的输入流,我们可以通过读取输入流的方式获得网页的内容,并通过输出流写入HTML文件中. 方式一: 使用此方法需要指定输入流和输出流的字符编码,否则可能会出现乱码 步骤: 1. 通过URL对象的openStream()方法获得网页的字节输入流 2. 将字节输入流转换成字符输入流 3. 为字符输入流加缓冲区 4. 定义一个字节输出流 5. 将字节输出…
String url=request.getRequestURL()+"?"+request.getQueryString();…
Enumeration<String> paraNames=request.getParameterNames(); for(Enumeration<String> e=paraNames;e.hasMoreElements()){ String thisName=e.nextElement()+""; //name名 String thisValue=request.getParameter(thisName); //name名对应的值 }…
前几个月微信公众号上线了IP归属地的功能,后续知乎.抖音等平台纷纷添加了该功能.如果是国内的用户精确到省份,国外用户精确到国家.本文就使用Java实现获取IP归属地. ! 主要讲解几个步骤: Java获取请求IP 解决Nginx转发问题 通过IP地址获取归属地 获取IP地址 首先使用基于Spring Boot搭建项目,在controller添加HttpServletRequest请求参数: @RestController public class IpController { @GetMappi…
一般情况下,java获取客户端IP地址的方法为request.getRemoteAddr();但这只是在没有网关或者代理的情况下,如果客户端将请求发送到nginx,再由nginx进行反向代理到目标服务器,例如tomcat,这个时候在tomcat里运行的java代码,通过request.getRemoteAddr();获取的IP地址,实际上是nginx的IP地址,而不是真实的客户端IP地址. nginx在将请求进行重定向的时候,会在请求头里面增加一个x-forward-for信息,用以跟踪原有客户…
背景:在httpclent做post或者get请求时,请求返回的数据总是和预想的不一致,但是有不知道怎么排查问题,经同事说httpclient可以设置代理,就可以获取请求前数据的一些问题,帮助我排查问题,使用代理很方便,就3句话 实现方式 /** * * @测试点: 发送get请求,并且设置cookies * @验证点: TODO(这里用一句话描述这个方法的作用) * @param @param * url * @param @param * cookies @备注: void * @autho…
主要参考:Java获取本机MAC地址/IP地址/主机名 做的更改: 1.我的windows是中文版,程序中获取mac时是按照physical address 获取的,添加上"物理地址": 2.获取到第一个mac之后继续循环buffer,获取其他网卡的mac(无线网卡.以太网卡.虚拟网卡...),但我的机器获取到5个mac地址,不知道为什么,我知道的有一个虚拟网卡,一个以太,一个无限,另外两个不知道哪里来的. 3.中文系统获取bufferedReader 后的编码不正确,添加编码“GBK…
原文:2019-9-2-win10-uwp-判断本地ip title author date CreateTime categories win10 uwp 判断本地ip lindexi 2019-09-02 12:57:38 +0800 2018-2-13 17:23:3 +0800 Win10 UWP 本文主要:如何判断一个IP是本地IP 对于本地 127.0.0.1 就是一个内部IP,之外,还有10.0.0.0/24 ,172.16.0.0/16 , 192.168.0.0/16 , 16…
1. JAVA获取客户端请求的当前网络ip地址: /** * 获取客户端请求的当前网络ip * @param request * @return */ public static String getIpAddr(HttpServletRequest request){ String ipAddress = request.getHeader("X-Real-IP");//先从nginx自定义配置获取 if (ipAddress == null || ipAddress.length(…
之前写了一个获取ip地址的方法,但是放网上一查显示此Ip地址是局域网ip地址,要是想获取请求端的真实公网ip地址怎么样了,看了一些别人的博客后发现,想要获取客户端的公网ip必须借助第三方. package com.jzproject.common.util; import javax.servlet.http.HttpServletRequest; import org.slf4j.Logger;import org.slf4j.LoggerFactory; import java.io.Buf…
import java.net.InetAddress; import java.net.UnknownHostException; public class IpTest { public static void main(String args[]) throws UnknownHostException { String ip = InetAddress.getLocalHost().getHostAddress(); System.out.println(ip); } } 功能是实现了,…
package cn.zgjkw.battalion.util; import org.apache.log4j.Logger; import javax.servlet.http.HttpServletRequest;import java.io.IOException; /** * 常用获取客户端信息的工具 * */ public final class NetworkUtil { /** * Logger for this class */ private static Logger lo…
1 public static void main(String[] args) { 2 try { 3 InetAddress address = InetAddress.getLocalHost();//获取的是本地的IP地址 //PC-20140317PXKX/192.168.0.121 4 String hostAddress = address.getHostAddress());//192.168.0.121 5 InetAddress address1 = InetAddress.…
问题 用Java获取本机IP地址,需要处理: 1. 多块网卡. 2. 排除loopback设备.虚拟网卡 看似简单的代码,写起来还是要小心一些的. 方案 HBase客户端获取本机IP的代码提供了一个很好的参考.没有特殊需求的话,拷贝过去用吧:) // From HBase Addressing.Java private static InetAddress getIpAddress(AddressSelectionCondition condition) throws SocketExcepti…