Cómo organizar tu infraestructura de red con NetBox
Todo ingeniero de redes o sysadmin probablemente tiene una historia triste sobre una hoja de cálculo de Excel. Durante años rastrearon las direcciones IP disponibles en ella, hasta que alguien accidentalmente asignó la misma dirección tanto a una puerta de enlace como a un nuevo servidor de base de datos. Y cuando se trata de racks físicos en la sala de servidores, la documentación generalmente se queda atrás de la realidad por varios meses. Nadie puede recordar exactamente a qué puerto del panel de parcheo va ese cable azul.
El proyecto NetBox surgió en 2016 como respuesta directa a este caos. Construido con Python y Django, fue concebido como un reemplazo para los sistemas fragmentados de gestión de direcciones IP (IPAM) y gestión de recursos del centro de datos (DCIM). Hoy, el repositorio ha obtenido más de 21,000 estrellas en GitHub y se ha convertido en el estándar de facto para mantener el estado autoritativo de tu red.

¿Qué es Source of Truth y por qué lo necesitas
El principio central detrás de NetBox es el concepto de Source of Truth (Fuente de Verdad): una única fuente de información autoritativa. NetBox captura el estado previsto de tu red en lugar de su estado operativo actual.
Esta es una distinción fundamental. El programa no sondea los switches mediante SNMP ni escanea puertos. Describe cómo la red debería estar configurada según el diseño del ingeniero.

Esta separación de responsabilidades cambia fundamentalmente el enfoque hacia la automatización. En lugar de configurar dispositivos manualmente y luego luchar por compilar informes, el ingeniero realiza los cambios directamente en la base de datos de NetBox. Scripts o sistemas de orquestación como Ansible y Salt recuperan estos parámetros a través de la API REST, generan configuraciones y las despliegan en los equipos.
Características principales
Los desarrolladores se centraron deliberadamente en los requisitos específicos de redes, por lo que el modelo de datos está listo para usar inmediatamente después de la instalación.
1. Modelado detallado físico y lógico
El sistema puede unificar todas las capas de infraestructura:
- Ubicaciones de sitios, salas de servidores, racks y unidades específicas
- Tipos de dispositivos, módulos de expansión, fuentes de alimentación e interfaces de red
- Trazado de rutas de cables de extremo a extremo desde puertos de servidor hasta puertos de switch central
- Prefijos IP, grupos de direcciones, VLANs y VRFs
La interfaz puede visualizar racks con equipos instalados y trazar rutas completas de cables a través de paneles de parcheo.


2. Renderizado de configuración mediante Jinja2
Puedes almacenar plantillas Jinja2 directamente dentro de NetBox. Estas plantillas extraen parámetros de la base de datos y generan configuraciones listas para usar para Cisco, Juniper, Mikrotik o servidores Linux. Las plantillas se pueden cargar a través de la interfaz web o sincronizar con un repositorio git externo.
3. Scripts personalizados y webhooks
Las operaciones rutinarias, como poner en marcha una nueva sucursal, consumen tiempo significativo cuando se llenan manualmente docenas de formularios. NetBox incluye soporte integrado para scripts personalizados de Python. Escribes un script con los campos de entrada necesarios y un ingeniero lo ejecuta directamente desde el navegador. El script asigna automáticamente subredes requeridas, crea dispositivos y asigna direcciones según las políticas de la empresa.
Los webhooks permiten la integración con otros servicios. Cuando agregas un nuevo servidor, un webhook envía inmediatamente un evento a tu sistema de monitoreo o actualiza un registro en el servidor DHCP.
4. Control de cambios y reglas de validación
El sistema mantiene un registro de auditoría completo de todas las acciones. Puedes ver exactamente quién cambió el estado de un puerto, cuándo se asignó una dirección y qué solicitud estaba asociada con ella.
Para evitar que los empleados violen los estándares de la empresa, los administradores pueden configurar reglas de validación personalizadas. Por ejemplo, puedes prohibir eliminar dispositivos marcados como "Activos" o requerir campos obligatorios de número de inventario para modelos de servidor específicos.

Stack técnico y extensibilidad
En su interior, NetBox funciona con un stack clásico y probado:
- Python 3 y el framework web Django
- PostgreSQL como base de datos principal
- Redis para colas de tareas y caché
La aplicación expone una API abierta basada en REST y GraphQL, lo que simplifica enormemente la construcción de integraciones.
Cuando las entidades estándar no son suficientes, la funcionalidad se puede extender mediante plugins. Por ejemplo, el plugin oficial NetBox Branching introduce lógica de ramificación similar a Git para la gestión de datos. Un ingeniero crea una rama, realiza cambios planificados de topología, obtiene aprobación de los colegas y fusiona en la base de datos principal solo antes de desplegar en producción. Otros plugins populares agregan gestión de zonas DNS y seguimiento de sesiones BGP.
¿Quién puede beneficiarse de este proyecto
Si tu empresa tiene solo un par de servidores y un switch no administrado, implementar NetBox no tiene sentido. La sobrecarga de mantenerlo superaría los beneficios.
Sin embargo, si tu infraestructura incluye docenas de switches, cientos de máquinas virtuales o múltiples ubicaciones de sucursales, el proyecto rápidamente recupera el tiempo de implementación. Transforma el conocimiento disperso de los ingenieros individuales en una base de datos estructurada lista para la automatización.
Puedes explorar la interfaz sin instalar nada localmente a través de la demo pública, y la documentación del proyecto proporciona pasos de instalación detallados a través de Docker o directamente en el host.
Proyectos relacionados