
java获取外网ip地址方法:
public class Main {
public static void main(String[] args) throws SocketException {
Systemoutprintln(MaingetRealIp());
}
public static String getRealIp() throws SocketException {
String localip = null;// 本地IP,如果没有配置外网IP则返回它
String netip = null;// 外网IP
Enumeration<NetworkInterface> netInterfaces =
NetworkInterfacegetNetworkInterfaces();
InetAddress ip = null;
boolean finded = false;// 是否找到外网IP
while (netInterfaceshasMoreElements() && !finded) {
NetworkInterface ni = netInterfacesnextElement();
Enumeration<InetAddress> address = nigetInetAddresses();
while (addresshasMoreElements()) {
ip = addressnextElement();
if (!ipisSiteLocalAddress()
&& !ipisLoopbackAddress()
&& ipgetHostAddress()indexOf(":") == -1) {// 外网IP
netip = ipgetHostAddress();
finded = true;
break;
} else if (ipisSiteLocalAddress()
&& !ipisLoopbackAddress()
&& ipgetHostAddress()indexOf(":") == -1) {// 内网IP
localip = ipgetHostAddress();
}
}
}
if (netip != null && !""equals(netip)) {
return netip;
} else {
return localip;
}
}
}
获取本机ip地址
InetAddress addr = InetAddressgetLocalHost();
ip=addrgetHostAddress()toString;
1、如果服务器如果没有采用反向代理,而且客户端没有用正向代理的话,那么可以获取客户端的真实IP地址requestgetRemoteAddr()
2、如果服务器如果没有采用反向代理,而且客户端有用正向代理的话,那么通过requestgetRemoteAddr()获取客户端的IP地址是客户端 的代理服务器的地址,并不是客户端的真实地址,
3、如果客户端使用的是多层代理的话,服务器获得的客户端地址是客户端的最外围代理服务器的地址如果服务器如果采用反向代理服务器,不管客户端采用的是何种方式访问服务器。
//获得客户端真实IP地址的方法一:public String getRemortIP(>
以上就是关于java怎么获取请求的ip全部的内容,包括:java怎么获取请求的ip、java里面如何获取服务器的ip地址,帮帮忙、java 获取请求ip 可靠吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)