← Volver al proyecto LANCTL

Especificaciones avanzadas · 0.3.1-beta.2

Una consola para entender y gobernar la red local.

LANCTL unifica descubrimiento, inventario, cableado, racks, credenciales y monitorización continua de una LAN. Sus aplicaciones comparten servicios, identificadores y configuración, pero mantienen separados los datos de cada dominio para poder trabajar en paralelo con límites claros.

PS› lanip project use Casa.vlf
Proyecto activo: Red de casa

PS› lanip list --accurate --active
18 equipos · 15 activos · 3 cambios

PS› lanrack show RK-00
U24  SW-CORE   switch   online
U20  NAS-01    storage  online
Plataformas Windows · Linux · Raspberry Pi OS
Interfaces CLI · consola · TUI · aplicaciones paralelas
Estado Beta técnica

01 · Visión del sistema

Una identidad estable para cada elemento de la LAN.

LANCTL no se limita a enumerar direcciones IP. Construye un inventario lógico centrado en la MAC, conserva evidencias y registra cómo evoluciona cada elemento. Alias, fabricante, grupos, puertos, protocolos y estado CNF quedan asociados a esa identidad y pueden viajar dentro de un proyecto.

Inventario

Contexto, no solo resultados

Cada observación se contrasta con el inventario existente. Los cambios de IP, nombre, actividad o servicios pasan a formar parte del historial del dispositivo en vez de reemplazar silenciosamente el dato anterior.

Recurrentes

Equipos reconocibles entre redes

Los elementos marcados como recurrentes se reconocen por su identidad estable aunque aparezcan en otra LAN. Su catálogo es privado, se guarda en los datos locales y nunca se empaqueta en los binarios públicos.

Proyectos

Una red, un contenedor verificable

Los proyectos .vlf reúnen inventario SQLite, configuración, topología lógica, auditoría y hashes. Pueden verificarse, actualizarse transaccionalmente y trasladarse sin depender de la instalación.

Operación

Lectura segura antes de actuar

El diagnóstico es inocuo por defecto. Las acciones que cambian estado, abren accesos o afectan a equipos remotos exigen autoridad explícita, validación de parámetros y, cuando corresponde, confirmación humana.

02 · Arquitectura

Un núcleo común, varias formas de trabajar.

CLI, consola persistente y TUI consumen los mismos servicios. La GUI antigua está congelada y no se incluye en los binarios actuales. La lógica de red, los modelos y la persistencia permanecen separados de la presentación, de modo que un escaneo iniciado desde una interfaz produce el mismo inventario y los mismos eventos que desde cualquier otra.

1. Interfaces CLI, consola, TUI y sesiones remotas autorizadas; GUI antigua congelada.
2. Servicios Descubrimiento, consultas, historial y automatización.
3. Protocolos ICMP, ARP, WS-Discovery, SSH, SMB y adaptadores.
4. Datos SQLite, JSON transaccional, eventos y proyectos VLF.
Capa Responsabilidad Garantía principal
Presentación Representar inventario, detalle, actividad y órdenes. No duplica reglas de negocio.
Core Identidad, configuración, credenciales, consultas y tareas. Validación central y comportamiento coherente.
Servicios Descubrimiento, escaneo, monitorización y eventos. Resultados estructurados y trazables.
Persistencia Inventario, métricas, configuración y proyectos. Bloqueos interproceso y sustitución atómica.
Extensiones Complementos LCP, permisos, eventos y paneles. Capacidades declaradas y activación explícita.

03 · Aplicaciones paralelas

Servicios compartidos, datos con propietario definido.

LANCTL funciona como orquestador de una suite. Sus aplicaciones pueden permanecer abiertas en paralelo, comparten identificadores, configuración y una misma raíz de datos, pero cada dominio mantiene la propiedad de su información y utiliza servicios transaccionales para coordinarse.

LANIP

Inventario lógico

Descubrimiento, dispositivos, diagnóstico y operaciones de red mediante lanip o lanctl ip.

LANWIRE

Infraestructura física

Cables, puertos, paneles y enlaces viven en physical/idf.db, separados del inventario lógico.

LANRACK

Armarios y unidades U

Consulta la base física en modo de solo lectura para representar racks y sus ocupantes.

LANACCESS

Credenciales cifradas

Administra usuarios y secretos DPAPI sin mostrar contraseñas; LANIP consume referencias autorizadas.

LANMON

Observabilidad

Expone estado, eventos, historial, alertas e incidencias sobre el runtime de monitorización.

LANBACK

Backend previsto

Aplicación reservada para una fase posterior; no forma parte de las 6 aplicaciones actuales.

lanip --tui
lanwire list
lanrack show RK-00
lanaccess --tui
lanmon

04 · Descubrimiento y diagnóstico

La profundidad del escaneo se adapta al escenario.

Los perfiles fast, normal y accurate equilibran tiempo y cobertura. El operador también puede fijar timeout, concurrencia, orden de recorrido, número máximo de hosts, reintentos y resolución de servicios para redes pequeñas o segmentos más exigentes.

Fast

Presencia inmediata

Prioriza ARP y tiempos de espera breves para localizar cambios evidentes con poca latencia.

Normal

Equilibrio cotidiano

Combina ICMP y ARP con una relación equilibrada entre cobertura, carga y duración.

Accurate

Reconocimiento profundo

Añade reintentos, nombres, WS-Discovery y proveedores de descubrimiento habilitados.

lanip list --normal --active
lanip list --accurate --progress
lanip ephemeral --normal
lanip -e --fast --range 192.168.1.0/24
lanip settings --workers 64 --timeout 0.8 --scan-order ascending
lanip scan CAM1 --identify
lanip list --where "active and group=IOT and vendor~Amazon"
lanip list --format html --output inventario.html

ephemeral realiza una exploración aislada: detecta dispositivos sin modificar proyectos ni inventarios.

La identificación de servicios combina banners y sondas inocuas. Un puerto abierto por sí solo no se presenta como identificación concluyente: LANCTL conserva producto, nivel de confianza y evidencia observada.

05 · Backend Monitor

De una inspección puntual a la vigilancia continua.

El motor Monitor puede ejecutarse durante una sesión diagnóstica o quedar instalado en un nodo permanente, como una Raspberry Pi. Un scheduler monotónico coordina comprobaciones, aplica histéresis para evitar falsos cambios y transforma las anomalías persistentes en incidencias consultables.

Modo permanente

  • Perfiles de presencia, descubrimiento, servicios y análisis profundo.
  • Asignaciones por equipo, grupo, prioridad o comprobación.
  • Métricas SQLite en modo WAL, retención y agregados.
  • Servicio nativo de Windows o unidad systemd en Linux.

Modo temporal

  • Sesiones acotadas por duración y proyecto.
  • Ping frecuente e intervalos cortos de exploración.
  • Identificación rápida de un conjunto de elementos.
  • Informe portable al finalizar la observación.
lanctl monitor profile create storage --presence 30s --services 10m --deep 6h
lanctl monitor assign NAS --profile storage --priority critical
lanctl monitor session start --project Casa.vlf --duration 30m --mode diagnostic
lanctl monitor status --json
lanctl monitor report latest

06 · Acceso remoto controlado

Terminal SSH e interfaz HTTPS, apagadas por defecto.

El acceso remoto está pensado para la propia LAN y requiere configuración explícita. SSH y HTTPS comparten usuarios, roles y permisos, pero mantienen autenticadores separados: claves públicas para SSH y hashes Scrypt para la web. Habilitar un canal no habilita automáticamente el otro.

Red

Exposición acotada

Bind a una IP LAN concreta, validación por CIDR y ausencia de apertura automática de puertos, NAT o UPnP.

Identidad

RBAC compartido

Varias cuentas con roles diferenciados, sesiones revocables y auditoría sin credenciales predeterminadas.

Transporte

Canales restringidos

SSH expone el subsistema LANCTL, no una shell del sistema; HTTPS exige TLS, CSRF y origen explícito.

lanip access init
lanip access configure ssh --bind 192.168.1.5 --cidr 192.168.1.0/24 --port 2222
lanip access user add operador --role operator --ssh-key operador.pub
lanip access configure https --bind 192.168.1.5 --cidr 192.168.1.0/24 --port 8443
lanip access certificate --common-name lanctl.local
lanip access enable ssh
lanip access enable https

Los certificados autogenerados son autofirmados. Su huella debe distribuirse mediante un canal confiable. La recuperación de cuentas es siempre local y no existe una puerta de acceso remota oculta.

07 · Integraciones operativas

Acciones especializadas sin convertir el núcleo en un monolito.

Las funciones estrechamente ligadas a la operación se exponen como comandos coherentes, mientras que los proveedores opcionales pueden distribuirse como complementos LCP con permisos declarados y activación consciente.

Wake-on-LAN

Encendido, condiciones y secuencias

wol NAME envía paquetes mágicos y admite repetición, espera, condiciones AND/OR/NOT y secuencias con dependencias. Las operaciones de apagado o reinicio requieren transporte SSH y credencial configurada.

SMB

Recursos compartidos de Windows

Detecta grupos de trabajo, carpetas e impresoras compartidas; permite abrir recursos con el explorador y conserva las credenciales fuera de los argumentos de proceso. SMB1 no se activa.

Radmin

Lanzamiento desde el inventario

Abre Radmin Viewer en control, vista, archivos, chat o terminal utilizando sus opciones documentadas. Los secretos se delegan al phonebook de Radmin y nunca se insertan en la línea de comandos.

Cisco

Operaciones clasificadas por riesgo

La capa gestionada de switching valida el catálogo, prepara una vista previa y solicita confirmación para cambios sensibles antes de ejecutar el plan.

lanctl wol PC --if offline --repeat 3 --wait 60
lanctl wol sequence startup.office run
lanctl smb NAS shares
lanctl smb NAS open Public --dry-run
lanctl radmin PC --mode control --dry-run

08 · Datos, trazabilidad y seguridad

Información portable sin mezclarla con los binarios.

LANCTL separa instalación, datos operativos y secretos. Las escrituras sobre JSON y VLF usan bloqueos interproceso, archivos temporales, sincronización y sustitución atómica. SQLite emplea transacciones y WAL cuando hay concurrencia.

Dato Formato Finalidad
Inventario lógico JSON transaccional + SQLite dentro de VLF Identidad, direcciones, servicios, grupos y atributos.
Cableado físico SQLite · physical/idf.db Identificadores, racks, puertos, paneles y conexiones de LANWIRE.
Proyecto VLF 1.0 / ZIP verificable Transportar una LAN con metadatos, auditoría y hashes SHA-256.
Actividad JSONL + log legible Consultar eventos por elemento, fecha, tipo, origen o resultado.
Monitorización SQLite WAL Sesiones, estado, métricas, agregados e incidencias.
Credenciales Almacén cifrado Mantener secretos fuera de logs, procesos y repositorio.

Historial estructurado

history NAME muestra la cronología asociada a la identidad del equipo. Puede filtrar por fechas, origen, tipo, resultado, errores y texto, además de exportar a tabla, JSON o CSV.

Integridad VLF

project verify comprueba estructura, límites, rutas internas, integridad SQLite, hash funcional y checksum general antes de modificar el contenedor.

09 · Instalación y despliegue

El mismo proyecto, desde un portátil hasta un nodo permanente.

GitHub Releases distribuye artefactos por plataforma y arquitectura con comprobación SHA-256. La instalación estándar integra PATH y accesos; el modo Monitor prepara el servicio; la variante portable mantiene sus datos junto al ejecutable sin alterar el sistema.

Modalidad Plataforma Modelo de datos
Standard Windows / Linux Datos del usuario fuera de Program Files u /opt.
Monitor Windows / Linux / Raspberry Pi OS Datos y secretos del servicio en rutas protegidas independientes.
Portable Windows / Linux data/lanctl dentro de la carpeta portable.
# Windows PowerShell
irm https://raw.githubusercontent.com/CctrGy/LANCTL/main/install.ps1 -OutFile install.ps1
.\install.ps1 -Channel beta

# Linux / Raspberry Pi OS 64-bit
curl --proto '=https' --tlsv1.2 -fsSLo install.sh \
  https://raw.githubusercontent.com/CctrGy/LANCTL/main/install.sh
sudo bash install.sh --channel beta
Integrado Opcional Requiere autorización o configuración

Código y versiones

Consulta el desarrollo de LANCTL.

El repositorio reúne el código, la documentación técnica, los contratos VLF/LCP, las pruebas y el sistema de empaquetado para Windows, Linux y Raspberry Pi OS.

Abrir LANCTL Reference →