java中如何获取ip地址吗

java中如何获取ip地址吗

作者:William Gu发布时间:2026-02-27阅读时长:0 分钟阅读次数:11

用户关注问题

Q
如何在Java程序中获取本地主机的IP地址?

在Java中,如何获取当前运行程序所在机器的IP地址?

A

获取本地主机IP地址的方法

可以使用Java的InetAddress类来获取本地主机的IP地址。具体做法是调用InetAddress.getLocalHost()获取本地主机的InetAddress对象,然后使用getHostAddress()方法得到IP地址字符串。例如:

InetAddress localHost = InetAddress.getLocalHost();
String ip = localHost.getHostAddress();
System.out.println("本机IP地址:" + ip);
Q
Java中如何获取远程主机的IP地址?

如果我有一个域名或者主机名,如何用Java获取对应的IP地址?

A

使用InetAddress根据主机名解析IP

可以通过InetAddress.getByName(String host)方法来根据主机名解析IP地址。示例如下:

InetAddress inetAddress = InetAddress.getByName("www.example.com");
String ip = inetAddress.getHostAddress();
System.out.println("远程主机IP地址:" + ip);
Q
如何在Java中处理多网卡情况下的IP地址获取?

当一台机器有多个网络接口时,怎样在Java中获取所有的IP地址?

A

使用NetworkInterface获取所有网络接口的IP地址

可以使用NetworkInterface类配合Enumeration遍历所有网络接口,并通过InetAddress列出对应的IP地址。示例代码如下:

Enumeration<NetworkInterface> nis = NetworkInterface.getNetworkInterfaces();
while (nis.hasMoreElements()) {
    NetworkInterface ni = nis.nextElement();
    Enumeration<InetAddress> addresses = ni.getInetAddresses();
    while (addresses.hasMoreElements()) {
        InetAddress addr = addresses.nextElement();
        System.out.println(ni.getName() + " - " + addr.getHostAddress());
    }
}