sonnora@systems:~/projects/rscout$ cat README

rScout — cada dispositivo en la red, identificado.

Un escáner de red en Rust que va más allá de un barrido de ping. rScout correlaciona señales de varios protocolos a la vez para descubrir qué hay realmente en tu red — incluidos los dispositivos que hacen todo lo posible por ocultarlo.

● desarrollo activoEscrito en RustMotor TUI personalizado

// el problema

La mayoría de los escáneres te dicen que una IP respondió. Eso no es lo mismo que saber qué hay ahí.

Restricción

Los dispositivos modernos — especialmente los Android — aleatorizan su dirección MAC, lo que rompe la forma más simple de distinguir un dispositivo de otro con el tiempo. Cualquier señal única (un puerto abierto, un nombre de host, un prefijo MAC) es fácil de falsificar, pasar por alto o malinterpretar por sí sola.

Enfoque

rScout trata la identificación de dispositivos como un problema de puntuación, no de búsqueda. Reúne varias señales independientes por dispositivo y las ejecuta a través de un marco de puntuación de candidatos, de modo que una señal débil o ausente en una fuente no hunda la identificación completa.

// fuentes de señal

Cuatro protocolos, verificados cruzadamente

SSDP / UPnP

Lee anuncios de servicio publicitados por los dispositivos — a menudo la forma más rápida de detectar dispositivos smart-home y multimedia en el segmento.

mDNS / Bonjour

Capta transmisiones locales de descubrimiento de servicios, una señal fuerte para hardware de Apple y muchos dispositivos IoT.

Consulta OUI de MAC

Compara el prefijo del fabricante contra rangos de proveedores conocidos — útil, pero tratado como una pista más que como una verdad absoluta dada la aleatorización de MAC.

Hostname DHCP

Obtiene el nombre de host que un dispositivo anuncia al solicitar una dirección — a menudo la señal más legible de las cuatro.

// interfaz

Una TUI de paneles divididos, no un muro de registros

La interfaz de terminal funciona con un motor de renderizado personalizado con paneles desplazables independientemente, impulsado por crossterm. Un panel rastrea el descubrimiento en vivo; el otro mantiene el registro continuo del clasificador.

rscout — escaneando 192.168.1.0/24

// bajo el capó

Construido a la manera difícil, a propósito

Pipeline

Las señales brutas pasan por un pipeline de clasificador/enriquecedor antes de que algo llegue a la UI — el enriquecimiento añade contexto (fabricante, tipo de servicio, rol probable), la clasificación convierte eso en una identidad de dispositivo con un nivel de confianza.

Endurecimiento

Una pasada completa por la base de código encontró y corrigió ramas de clasificación muertas, discrepancias de tipo de servicio mDNS y errores tanto en el recolector mDNS/Bonjour como en el enriquecedor SSDP — el tipo de trabajo de corrección que no aparece en una lista de funciones pero decide si se puede confiar en los resultados.

Renderizado

El búfer de terminal de pantalla alternativa tenía un error de corrupción bajo ciertas secuencias de redimensionamiento — rastreado y corregido a nivel del motor de renderizado en lugar de parcheado en la capa de UI.

// conectar

¿Curioso de cómo rScout podría encajar en tu red?

Contáctanos sobre acceso, despliegue o extenderlo para un panorama de dispositivos específico.