当前位置:首页 » 云服务器 » 后端真实服务器ip地址

后端真实服务器ip地址

发布时间: 2022-08-21 02:27:13

A. 如何取得反向代理的真实ip

问题引出:
<hr/>
在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了 Apache,Nagix等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,用 request.getRemoteAddr()方法获取的IP地址是:127.0.0.1或 192.168.1.110,而并不是客户端的真实IP。
经过代理以后,由于在客户端和服务之间增加了中间层,因此服务器无法直接拿到客户端的 IP,服务器端应用也无法直接通过转发请求的地址返回给客户端。但是在转发请求的HTTP头信息中,增加了X-FORWARDED-FOR信息。用以跟踪原有的客户端 IP地址和原来客户端请求的服务器地址
举例来说,当我们访问口碑网首页hangzhou.jsp时,其实并不是我们浏览器真正访问到了服务器上的hangzhou.jsp 文件,而是先由代理服务器Nagix去访问hagnzhou.jsp ,代理服务器再将访问到的结果返回给我们的浏览器,因为是代理服务器去访问hangzhou.jsp的,所以hangzhou.jsp中通过 request.getRemoteAddr()的方法获取的IP实际上是代理服务器的地址,并不是客户端的IP地址。
<hr/>
获得客户端真实IP地址的方法一:
public String getRemortIP(HttpServletRequest request) {
if (request.getHeader("x-forwarded-for") == null) {
return request.getRemoteAddr();
}
return request.getHeader("x-forwarded-for");
}
<hr/>

获得客户端真实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;
}
<hr/>

B. 服务器的IP地址就能真实反映他的实际地址吗可以虚拟吗比如在国内的服务器IP地址确实国外的

确实不能真实反映实际地址,像QQ什么的使用代理后就变成国外的啦。同意正宗大呆子

C. nginx做反向代理负载均衡 Java怎么获取后端服务器获取用户IP

首先,在前端nginx上需要做如下配置:

location /

proxy_set_hearder host $host;

proxy_set_header X-forwarded-for $proxy_add_x_forwarded_for;

proxy_set_header X-real-ip $remote_addr;

};

nginx会在把请求转向后台real-server前把http报头中的ip地址进行替换;这样操作完成后,real-server也需要做一些操作;

public class ClientIPUtils {
/**
* 在很多应用下都可能有需要将用户的真实IP记录下来,这时就要获得用户的真实IP地址,在JSP里,获取客户端的IP地
* 址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等
* 反向代理软件就不能获取到客户端的真实IP地址了。
* 但是在转发请求的HTTP头信息中,增加了X-FORWARDED-FOR信息。用以跟踪原有的客户端IP地址和原来客户端请求的服务器地址。
* @param request
* @return
*/

public static String getClientIp(HttpServletRequest request) {

String ip = request.getHeader("x-forwarded-for");

//String ip = request.getHeader("X-real-ip");

logger.debug("x-forwarded-for = {}", ip);
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
logger.debug("Proxy-Client-IP = {}", ip);
}
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
logger.debug("WL-Proxy-Client-IP = {}", ip);
}
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
logger.debug("RemoteAddr-IP = {}", ip);
}
if(StringUtils.isNotBlank(ip)) {
ip = ip.split(",")[0];
}
return ip;

}

}

D. IP地址代表着什么真实地址吗

IP地址只是一个逻辑上的地址,并不是真实地址。
IP地址在公网上是唯一的,在私网里也是唯一的,但是属于不同私网的IP地址可能相同。
192.168.0.x
172.16.x.x
10.X.X.X.
这些都是私网地址,不能在公网出现。
私网地址通过NAT技术与公网地址通信。
IP地址在公网唯一并不代表每台主机的IP地址固定不变。
这取决于网络环境,情况比较复杂,比如DHCP服务器的配置等等。
但是一般来说,IP地址所属的是网段是不会变的。(可以理解为IP地址的前几个数字,具体是几个数字在不同的网络是不一样的。牵扯到子网掩码的概念,这里不多说了)
真实地址是MAC地址,也就是物理地址。每块网卡都有一个全球唯一的MAC地址。
路由器会记录你当前的IP地址与MAC地址的绑信息,从而保证发往你IP地址的报文能准确的发往你的MAC地址,也就是你的网卡。(这个绑定信息就是ARP表项)
大体上是这样,有什么疑问请补充。

E. 实IP地址于虚IP地址的区别

IP地址好像不分实和虚
或者说你是问的电脑的真实IP,和使用代理服务器后的IP有什么区别?
电脑真实的IP地址就是服务商给你分配的上网IP,用这个IP可以找到你真实的位置。
而使用代理服务器后的IP就好像一个中转站,不使用代理服务器时,你要访问网络,比如网络,是你自己真实的IP直接向网络的服务器提出请求,然后网络在回应你的IP,然后你就可以访问了。而使用代理服务器后,是你的IP先向你所使用的代理服务器,提出 你要访问网络的请求,代理服务器在把你的访问请求转给网络,然后网络再向你所使用的代理服务器回应,代理服务器在向你回应。
IP只分以下几类:
1.A类IP地址
一个A类IP地址由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”, 地址范围1.0.0.1-126.255.255.254(二进制表示为:00000001 00000000 00000000 00000001 - 01111110 11111111 11111111 11111110)。可用的A类网络有126个,每个网络能容纳1600多万个主机。
2.B类IP地址
一个B类IP地址由2个字节的网络地址和2个字节的主机地址组成,网络地址的最高位必须是“10”,地址范围128.1.0.1-191.254.255.254(二进制表示为:10000000 00000001 00000000 00000001 - 10111111 11111110 11111111 11111110)。可用的B类网络有16382个,每个网络能容纳6万多个主机 。
3.C类IP地址
一个C类IP地址由3字节的网络地址和1字节的主机地址组成,网络地址的最高位必须是“110”。范围192.0.1.1-223.255.255.254(二进制表示为: 11000000 00000000 00000001 00000001 - 11011111 11111111 11111110 11111110)。C类网络可达209万余个,每个网络能容纳254个主机。
4.D类地址用于多点广播(Multicast)。
D类IP地址第一个字节以“1110”开始,它是一个专门保留的地址。它并不指向特定的网络,目前这一类地址被用在多点广播(Multicast)中。多点广播地址用来一次寻址一组计算机,它标识共享同一协议的一组计算机。
地址范围224.0.0.1-239.255.255.254
5.E类IP地址
以“11110”开始,为将来使用保留。
E类地址保留,仅作实验和开发用。

F. 如何查询代理服务器下的真实IP地址

vpn具有全局代理的特点,也就是说在连接VPN成功之后,所用上网活动都是通过代理之后的IP地址进行的,包括网页浏览, 外服网络 游戏视频欣赏和投票,注册之类的,双鱼IP转换器主要采用了隧道技术、加解密技术、密钥管理技术和使用者与设备身份认证技术。实现外网IP地址更改,更改之后的IP地址在网络查询

G. nginx做反向代理负载均衡 Java怎么获取后端服务器获取用户IP

nginx做反向负载均衡,后端服务器获取真实客户端ip方法:附上关键步的解释。
首先,在前端nginx上需要做如下配置:
location /
proxy_set_hearder host $host;
proxy_set_header X-forwarded-for $proxy_add_x_forwarded_for;
proxy_set_header X-real-ip $remote_addr;
};
nginx会在把请求转向后台real-server前把http报头中的ip地址进行替换;这样操作完成后,real-server也需要做一些操作;

public class ClientIPUtils {
/**
* 在很多应用下都可能有需要将用户的真实IP记录下来,这时就要获得用户的真实IP地址,在JSP里,获取客户端的IP地
* 址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等
* 反向代理软件就不能获取到客户端的真实IP地址了。
* 但是在转发请求的HTTP头信息中,增加了X-FORWARDED-FOR信息。用以跟踪原有的客户端IP地址和原来客户端请求的服务器地址。
* @param request
* @return
*/
public static String getClientIp(HttpServletRequest request) {
String ip = request.getHeader("x-forwarded-for");
//String ip = request.getHeader("X-real-ip");
logger.debug("x-forwarded-for = {}", ip);
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
logger.debug("Proxy-Client-IP = {}", ip);
}
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
logger.debug("WL-Proxy-Client-IP = {}", ip);
}
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
logger.debug("RemoteAddr-IP = {}", ip);
}
if(StringUtils.isNotBlank(ip)) {
ip = ip.split(",")[0];
}
return ip;

}
}

H. 如何查服务器的真实IP地址

可以通过DOS命令来初步判断,例如:netstat ip -a 具体请自行网络DOS命令每条命令的用途

热点内容
畅捷支付刷脸机如何设置密码 发布:2024-05-19 13:03:10 浏览:764
java麻将 发布:2024-05-19 13:03:00 浏览:433
存储过程大数据游标 发布:2024-05-19 13:00:50 浏览:515
内存存储价格 发布:2024-05-19 13:00:48 浏览:389
隔离期的算法 发布:2024-05-19 12:55:13 浏览:530
苹果怎么装安卓模拟器 发布:2024-05-19 12:42:15 浏览:801
脚本养微信 发布:2024-05-19 12:42:14 浏览:148
人脸识别算法公司 发布:2024-05-19 12:37:10 浏览:682
苹果平板怎么跟安卓电脑投屏 发布:2024-05-19 12:36:20 浏览:20
广州税控盘密码和口令是多少 发布:2024-05-19 12:25:36 浏览:595