我希望能够快速查找局域网内服务器的IP地址,我知道该应用程序在服务器上使用的端口号。
我已经尝试过这种方法,但它太慢了。即使我知道IP地址,响应时间也太长了(每个IP地址需要4秒左右)。考虑到这种方法,扫描从10.0.0.0到10.0.0.255的整个子网将需要几分钟时间。
我已经尝试过这种方法,但它太慢了。即使我知道IP地址,响应时间也太长了(每个IP地址需要4秒左右)。考虑到这种方法,扫描从10.0.0.0到10.0.0.255的整个子网将需要几分钟时间。
String ip = "10.0.0.45";
try {
InetAddress ping = InetAddress.getByName(ip);
Socket s = new Socket(ping, 32400);
System.out.println("Server found on IP: " + ping.getCanonicalHostName());
s.close();
} catch (IOException e) {
System.out.println("Nothing");
}
}
我可以使用线程,但那仍然很慢。我看到有应用程序在毫秒内找到IP地址。他们是怎么做到的?欢迎提供Java代码!