实现利用InetAddress.getByName()按计算机名称获得实验室局域网中所有开机主机名称和IP地址的代码。
时间: 2023-06-02 21:04:15 浏览: 188
通过计算机名获取IP地址
5星 · 资源好评率100%
以下是示例代码:
```java
import java.net.InetAddress;
import java.net.UnknownHostException;
public class Main {
public static void main(String[] args) {
try {
String subnet = "192.168.1.";
for (int i = 1; i < 255; i++) {
String host = subnet + i;
InetAddress inetAddress = InetAddress.getByName(host);
if (inetAddress.isReachable(100)) {
System.out.println(inetAddress.getHostName() + " " + inetAddress.getHostAddress());
}
}
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
该代码将遍历局域网中的所有IP地址,并尝试对每个地址执行DNS解析。如果解析成功并且主机处于活动状态,则将主机名和IP地址输出。注意在使用该代码时需要将`subnet`参数更改为您的局域网子网。
阅读全文