Cosa de todos los días: tenés un dispositivo conectado a la red local, con un número de IP que no conocés, por que vino sin manual, por que alguien se lo cambió y no lo documentó, por que la documentación se perdió o por lo que carajo fuese. Necesitás conocer ese número de IP pero no podés o no querés resetearlo a factory defaults desde el botoncito por hardware o cable de consola. Cosa de todos los días, como ya dije.
Encontrarlo es fácil cuando mas o menos conocés en que rangos pudo haber estado, simplemente escaneando todo el rango y esperando. Otros programas como angry/advanced IP scanner para Windows, Nast o nmap para Linux por poner dos ejemplos de cada uno, a la larga lo van a terminar encontrado, pero es una flor de paja. Escanear todo un rango de números de IP /16 por ejemplo implica reconfigurar tu placa de red para que caiga dentro de ese rango y esperar vaaaaaarios minutos a que termine.
Ni hablar de un /8, te la querés hachar.
Si no tenés tiempo para escanear todo el rango o no tenés ganas, bienvenido a mi vida. Pelás un linux, lo conectás a la red y saludás a todos los muchachos de un saque con un:
netdiscover -f
Tal y como se aprecia en el screenshot de mas arriba, en la LAN del ejemplo hay 4 rangos de números de IP en uso. Uno en particular, yo ni sabia que existiese por ejemplo. El programa, de acuerdo a la descripción cumple una diversidad de funciones muchos mas amplias:
netdiscover is an active/passive arp reconnaissance tool, initialy developed to gain information about wireless networks without dhcp servers in wardriving scenarios. It can also be used on switched networks. Built on top of libnet and libpcap, it can passively detect online hosts or search for them by sending arp requests.
Y si estoy aún mas apurado?
-f: Enable fast mode scan. This will only scan for .1, .100 and .254 on each network. This mode is usefull while searching for ranges being used. After you found such range you can make a specific range scan to find online boxes.
En definitiva: te permite encontrar muy rápidamente todos los rangos de números de IP de redes internas (los que son no routeables) por medio del envío de ARP requests a los números de IP broadcast de cada rango, sin necesidad de tener que ponerle mas de un número de IP a la placa de red desde la cual se realiza el escaneo en cuestión. Es decir: te cambia la vida.
Conociendo los rangos de números de IP en uso, el lector, versado en cuestiones de networking, recurrirá posteriormente a su herramienta habitual de escaneo de rangos específicos para encontrar lo que sea que estaba buscando y volverá a darme las gracias. Como mínimo.
Y si. Si llegaste hasta acá, te habrás dado cuenta de que si bien le pusieron un nombre bastante pelotudo al programita este, debajo se esconde esta funcionalidad que en realidad lo convierte en una joyita que no te puede faltar en el arsenal. Ah, y se instala desde el gestor de paquetes, nada de andar mariconeando con clonar un repositorio desde Github ni compilando mil mierdas. No podría ser mejor y por eso ni le puse link al site del autor.
Y ante la duda, no me rompas los huevos. Primero:
man netdiscover