Encuentra todas las direcciones IP en la red local
Quiero encontrar todas las direcciones IP de los dispositivos en la red local a la que estoy conectado actualmente usando el código Java. La utilidad útilAdvanced IP Scanner
es capaz de encontrar varias direcciones IP en misubred de192.168.178/24
:
De acuerdo aesta respuesta, construí mi código de la siguiente manera:
import java.io.IOException;
import java.net.InetAddress;
public class IPScanner
{
public static void checkHosts(String subnet) throws IOException
{
int timeout = 100;
for (int i = 1; i < 255; i++)
{
String host = subnet + "." + i;
if (InetAddress.getByName(host).isReachable(timeout))
{
System.out.println(host + " is reachable");
}
}
}
public static void main(String[] arguments) throws IOException
{
checkHosts("192.168.178");
}
}
Desafortunadamente, esto no imprime ningún resultado, lo que significa que no se puede acceder a ninguna dirección IP. ¿Por qué? Hay dispositivos en mi red local como se ve en elAdvanced IP Scanner
escanear.