java 获取经过代理之后的本机IP地址,亲测有效
经过反复的在网上查找代码,发现网上说的那些代码都是无效的
代码块
代码块语法遵循标准markdown代码,例如:
Enumeration allNetInterfaces = NetworkInterface.getNetworkInterfaces();
InetAddress ip = null;
while (allNetInterfaces.hasMoreElements()) {
NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement();
System.out.println(netInterface.getName());
Enumeration addresses = netInterface.getInetAddresses();
while (addresses.hasMoreElements()) {
ip = (InetAddress) addresses.nextElement();
if (ip != null && ip instanceof Inet4Address) {
System.out.println("本机的IP = " + ip.getHostAddress());
//这里可以的到本机的全部IP,而我做出了一个跳出,表示在eth3的时候是我们所需要的 IP ,所以跳出循环,下面的逻辑也是一样的
//if(netInterface.getName().equals("eth3")){
// break;
//}
}
}
//if(netInterface.getName().equals("eth3")){
// break;
//}
}