¿Hay alguna manera de escanear en busca de IP gratis en la red? Yo uso nmap -sP 192.168.1.0/24
, pero esto en realidad muestra Los servidores activos.
¿Hay alguna manera de escanear en busca de IP gratis en la red? Yo uso nmap -sP 192.168.1.0/24
, pero esto en realidad muestra Los servidores activos.
Respuestas:
Usar Nmap de esta manera es una forma bastante precisa de hacer lo que solicitó, siempre que se cumplan algunas condiciones previas:
Para obtener las direcciones "disponibles", debe obtener la lista de direcciones que Nmap informa como "inactivas". Puede hacer esto con un simple comando awk:
sudo nmap -v -sn -n 192.168.1.0/24 -oG - | awk '/Status: Down/{print $2}'
Resumen de las opciones de Nmap utilizadas:
-v
opción, Nmap imprimirá las direcciones que encuentre como "abajo" además de las que están "arriba".-sP
, he sustituido la ortografía más nueva -sn
, que todavía realiza el mismo escaneo, pero significa "omitir el escaneo de puertos" en lugar del engañoso "escaneo de Ping" (ya que la fase de descubrimiento del host no significa necesariamente un escaneo de eco ICMP o Ping )-n
opción omite las búsquedas DNS inversas, lo que le da un poco de tiempo, ya que no le interesan los nombres sino solo las direcciones IP.-oG
opción le dice a Nmap que envíe un formato grepable , que es más fácil de procesar para awk. El argumento " -
" le dice que envíe esta salida a stdout.El comando awk busca "Estado: abajo" e imprime el segundo campo, que contiene la dirección IP.
Por supuesto, si tiene acceso a las configuraciones en ejecución del conmutador o los contratos de arrendamiento del servidor DHCP, podría obtener esta respuesta con mucha más autoridad sin hacer un análisis que podría activar las alarmas de seguridad.
No estoy seguro sobre n-map, pero uno podría suponer razonablemente que si escribe un script de ping que envía 1 ping a cada dirección, cualquier host que regrese con "destino inalcanzable" está desocupado, y cualquier cosa que regrese "solicite tiempo de espera" está ocupado pero no responde al ping. La diferencia entre las dos respuestas es que "destino inalcanzable" no recibió una respuesta a su solicitud ARP. "Tiempo de espera de solicitud" significa que algo respondió a la solicitud ARP, pero no el paquete ICMP.
Aquí hay otro inspirado por Anders Larsson
para ip en 172.18.5. {129..254}; do {ping -c 1 -W 1 $ ip; } &> / dev / null || echo $ ip y hecho | ordenar
Lo que significa: "Intente hacer ping a todos los Ips en el rango. Si el" ping "falla, imprima esa IP"
Si lo haces
nmap -v -sn -n 192.168.1.0/24 -oG - | awk '/Status: Down/{print $2}'
Funciona rápido, pero noté que algunos hosts informados como "Abajo" son en realidad "Arriba"