java 获取真实的外网ip
时间: 2024-09-21 22:04:06 浏览: 35
获取Java程序中的真实外网IP地址通常需要借助网络库,如`java.net.InetAddress`类。以下是一个简单的示例,展示了如何通过API来获取:
```java
import java.net.InetAddress;
import java.net.UnknownHostException;
public class Main {
public static void main(String[] args) {
try {
// 获取本机的外网IP地址
InetAddress ipAddress = InetAddress.getByName("ifconfig.io");
String ip = ipAddress.getHostAddress();
System.out.println("Your public IP address is: " + ip);
} catch (UnknownHostException e) {
e.printStackTrace();
System.out.println("Failed to get the public IP address.");
}
}
}
```
这段代码会尝试从ifconfig.io这个公共API获取IP,如果本地无法访问或者网络有问题,它会抛出`UnknownHostException`异常。
注意,这种方法依赖于外部服务,如果你的应用需要长期稳定的获取机制,可能需要考虑使用第三方库,或者购买专门的服务来获取外网IP。
阅读全文