Cómo Scanopy te ahorra dibujar diagramas de red a mano
Cualquiera que haya intentado mantener un mapa actualizado de una red corporativa o de un servidor doméstico conoce este dolor. Te sientas en draw.io o Visio, pasas medio día arreglando cajitas para switches, servidores y conexiones. Pasa una semana, el sysadmin cambia un par de cables patch, el ingeniero DevOps levanta un nuevo stack en Docker, y tu diagrama dibujado a mano se convierte en un documento histórico inútil.
El estado de Terraform o Ansible tampoco siempre te salva. El código de infraestructura solo muestra lo que está descrito en el pipeline, ignorando cambios manuales en los switches o VMs creadas temporalmente.
Hace poco descubrí el proyecto Scanopy. Han construido una herramienta que maneja el escaneo regular de red y genera automáticamente diagramas interactivos en múltiples niveles de abstracción.
L2 (Físico) |
L3 (Lógico) |
Cargas de trabajo |
Aplicaciones |
Cómo funciona internamente
En lugar de instalar agentes pesados en cada máquina virtual, el proyecto utiliza un escáner daemon ligero. El daemon consulta los dispositivos de red a través de SNMP, analiza las tablas LLDP y ARP, y escanea puertos abiertos. Cuando es necesario, el escáner se conecta directamente al socket de Docker para inventariar los contenedores.
Internamente, Scanopy está escrito en Rust. Esto proporciona un rendimiento rápido del escáner y del servidor sin sobrecargar el consumo de memoria.
Después de cada ejecución del escáner, se construye un modelo de infraestructura, a partir del cual el sistema genera cuatro capas separadas:
- Capa física L2. Esto incluye switches, enlaces físicos y puertos de conexión de equipos específicos.
- Capa lógica L3. Muestra el enrutamiento, las subredes y la distribución de direcciones IP entre los hosts.
- Cargas de trabajo. Muestra la cadena desde servidores bare metal e hipervisores hasta máquinas virtuales y contenedores individuales.
- Aplicaciones. Agrupa los servicios y construye un grafo de dependencias entre bases de datos, servidores web y workers en segundo plano.
El proyecto ya incluye más de doscientas firmas de servicios preconstruidas. El escáner reconoce inmediatamente PostgreSQL, Redis, Nginx, Kubernetes y muchos otros programas sin necesidad de etiquetado manual adicional.
Qué puede hacer el escáner
La principal ventaja de este enfoque es la autonomía. Configuras un calendario y el escáner actualiza regularmente la topología en segundo plano.
Aquí están las características prácticas:
- Recopilación de datos distribuida. Para múltiples oficinas o VLANs aisladas, puedes desplegar daemons separados que envían datos a un servidor central.
- Exportación de diagramas. Los diagramas terminados se pueden exportar como SVG, embeber en documentación como código Mermaid, o subir directamente a Confluence.
- Interfaz web interactiva. Puedes hacer zoom en el mapa, hacer clic en nodos individuales, ver puertos activos y conexiones vecinas.
- Modelo de acceso basado en roles. Existe una separación incorporada entre organizaciones y usuarios, lo cual es útil para empresas de servicios y equipos de outsourcing.
Inicio rápido en el laboratorio
La forma más fácil de probar el sistema es levantar contenedores a través de Docker Compose en un host con acceso a la subred requerida.
curl -O https://raw.githubusercontent.com/scanopy/scanopy/refs/heads/main/docker-compose.yml
docker compose up -d
Después del inicio, la interfaz web escucha en el puerto 60072. Navega a http://localhost:60072, crea una cuenta de administrador local y comienza el primer ciclo de escaneo.
Si ejecutas un homelab en Proxmox VE, los autores tienen un script listo para el despliegue en un contenedor LXC. Scanopy también está disponible en el catálogo de aplicaciones de Unraid.
Si no quieres instalar localmente, los creadores tienen un sandbox demo público en demo.scanopy.net con datos de prueba pre-cargados.
Para quién el proyecto ahorrará tiempo
Para ingenieros de operaciones y equipos DevOps, Scanopy aborda la eterna pregunta de "a dónde va este tráfico y dónde se está ejecutando este contenedor". Ves los enlaces físicos y lógicos del hardware sin tener que recopilar trazas manualmente.
Para ingenieros de red, la utilidad ayuda a mantener un mapa de switching actualizado sin tediosas horas en editores gráficos. Al migrar un servicio o cambiar puertos, la topología se actualiza automáticamente con el siguiente escaneo.
Para propietarios de servidores domésticos y homelabs, la herramienta proporciona una forma de organizar el caos de tus servicios sin pasar tus fines de semana en documentación manual.
Resumen
Scanopy resuelve el problema clásico de que la documentación quede obsoleta de una manera directa y sencilla. Los diagramas se generan basándose en el estado real de la red, no en la comprensión del desarrollador de hace seis meses.
El código se distribuye bajo la licencia AGPL-3.0 para autoalojamiento. Si has estado posponiendo la actualización de tus mapas de infraestructura o estás cansado de redibujar diagramas después de cada despliegue, despliega el daemon en una red de prueba y observa los resultados de la primera ejecución.
Proyectos relacionados