Guía de tecnologías

Clonar y simular dispositivos de red en Linux

7 min read Redes Actualizado 18 Sep 2025
Clonar y simular dispositivos SNMP en Linux
Clonar y simular dispositivos SNMP en Linux

Qué aprenderás

  • Instalar y configurar Verax SNMP Agent Simulator en Linux.
  • Extraer un fichero de registro SNMP real con snmpwalk.
  • Añadir dispositivos simulados y arrancar la simulación.
  • Integrar dispositivos simulados en tu herramienta de monitorización.

Definiciones rápidas

  • SNMP: Protocolo de gestión para supervisar equipos de red.
  • OID: Identificador de objeto en la MIB, representa un dato gestionable.
  • snmpwalk: Herramienta que recorre OID y devuelve valores de un agente SNMP.
  • Simulador SNMP: Software que emula respuestas SNMP de equipos reales.

Requisitos y herramientas

  • Linux (32 o 64 bits): distribuciones comunes como SuSE, RedHat Enterprise o Debian (i386 y x64).
  • Conectividad TCP/IP en la red de pruebas.
  • Java 1.6 o superior instalado.
  • NET-SNMP tools (por ejemplo paquete net-snmp-utils / net-snmp).
  • Verax SNMP Agent Simulator (paquete gratuito en el ejemplo).
  • Software de monitorización de red (Zabbix, Nagios, PRTG, etc.).

Nota: conserva los nombres de archivos y rutas: /usr/local/vxsnmpsimulator, /etc/verax.d/, /etc/init.d/simulatord, etc.

Paso 1 — Instalar el simulador SNMP (Verax)

  1. Descarga y descomprime el paquete del simulador (por ejemplo vxsnmpsimulator-1.3.1.zip).
  2. Directorio recomendado de instalación: /usr/local/vxsnmpsimulator
  3. Crea y mueve el archivo simulator.conf a /etc/verax.d/
  4. Abre simulator.conf y modifica la variable SIMULATOR_HOME para apuntar al directorio de instalación:
SIMULATOR_HOME="/usr/local/vxsnmpsimulator"
  1. En el mismo fichero, localiza JRE_HOME y apunta a la carpeta donde está Java:
JRE_HOME=/usr/local/java/jdk1.6.0_14/bin/
  1. Define la interfaz primaria que usarás para crear alias (ej. eth1). La interfaz física debe existir antes de arrancar el simulador:
PRIMARY_INTERFACE='eth1'
  1. Copia el script simulatord a /etc/init.d:
  • sudo cp /usr/local/vxsnmpsimulator/conf/simulatord /etc/init.d/
  1. Da permisos de ejecución a los scripts relevantes:
chmod +x /etc/init.d/simulatord
chmod +x /usr/local/vxsnmpsimulator/conf/stop
chmod +x /usr/local/vxsnmpsimulator/conf/vlan_up
chmod +x /usr/local/vxsnmpsimulator/conf/vlan_down

Importante: verifica que JRE_HOME y SIMULATOR_HOME sean accesibles por el usuario que lanzará el servicio.

Paso 2 — Extraer registros SNMP desde un dispositivo físico

Para simular un equipo real necesitas un snapshot SNMP (fichero de registro) generado con snmpwalk.

  1. Instala herramientas NET-SNMP. En RHEL/CentOS/Alma/Rocky:
yum install net-snmp-utils

En Debian/Ubuntu:

sudo apt-get update && sudo apt-get install snmp
  1. Genera el fichero con snmpwalk. Ejemplo para SNMP v2c con comunidad “public”:
snmpwalk -On -Oe -OU -v2c -c public 192.168.100.8 > /root/cisco-snmprecordfile.txt

Explicación breve de las opciones:

  • -On: muestra OID numéricos.
  • -Oe: formatea valores hexadecimales donde procede.
  • -OU: evita nombres ambiguos y mejora legibilidad.
  • -v2c: usa SNMP versión 2c.
  • -c public: comunidad SNMP.
  1. Mueve el fichero generado a la carpeta del simulador (por ejemplo vxsnmpsimulator/device):
sudo mv /root/cisco-snmprecordfile.txt /usr/local/vxsnmpsimulator/device/

Consejo: si el equipo tiene SNMPv3 o comunidad distinta, ajusta los parámetros de snmpwalk según credenciales.

Paso 3 — Añadir el dispositivo al simulador

Edita el archivo de configuración de dispositivos del simulador: vxsnmpsimulator/conf/devices.conf. Añade un bloque que apunte al fichero creado y asigne una IP virtual a simular.

Ejemplo:


      
               
      

Notas:

  • La IP 192.168.160.34 es la IP virtual que responderá a consultas SNMP.
  • Asegúrate de que esa IP no esté en uso en la red física o ajusta la topología de pruebas.
  • El simulador crea interfaces alias tipo eth1:0, eth1:1, etc., según PRIMARY_INTERFACE.

Cómo crear interfaces virtuales (si no se crean automáticamente)

Si necesitas crear manualmente aliases en Linux (ejemplo para eth1:0):

sudo ip addr add 192.168.160.34/24 dev eth1

O con ifconfig (si disponible):

sudo ifconfig eth1:0 192.168.160.34 netmask 255.255.255.0 up

Ajusta la interfaz y la máscara según tu entorno.

Paso 4 — Iniciar la simulación

Antes de arrancar, comprueba que el puerto UDP 161 esté libre. Si algún proceso usa 161, deténlo.

Comprobación de puerto en Linux:

sudo ss -lunp | grep :161
# o
sudo netstat -lunp | grep :161

Si aparece un proceso, identifica y deténlo (por ejemplo, snmpd):

sudo systemctl stop snmpd
# o
sudo service snmpd stop

Para arrancar el simulador:

sudo service simulatord start

Para abrir la consola de gestión:

sudo service simulatord console

La consola preguntará datos de conexión. Si ejecutas la consola en el mismo servidor que el servicio, confirma con “y” cuando pregunte: Do you want to connect to default simulator server? [y/n]

Parámetros por defecto: 127.0.0.1:43500 (host 127.0.0.1 y puerto TCP 43500).

En la consola, usa el comando SHOW para listar los dispositivos simulados.

GIF que muestra la consola del simulador SNMP

Ya deberías ver tu switch Cisco simulado en 192.168.160.34.

Final — Añadir el dispositivo simulado al sistema de monitorización

  1. Verifica con SHOW que el simulador está activo y la IP aparece en la lista.
  2. En tu herramienta de monitorización, añade un host nuevo con la IP simulada (192.168.160.34) y configura las credenciales SNMP que correspondan (v2c/v3, comunidad, etc.).
  3. Prueba las consultas SNMP desde el servidor de monitorización hacia la IP simulada: snmpget o snmpwalk.

Si la monitorización no recibe datos, comprueba:

  • Firewall local/iptables/ufw que bloquee puerto UDP 161.
  • Rutas y VLANs que impidan llegar a la IP virtual.
  • Logs del simulador en /usr/local/vxsnmpsimulator/log/ (ruta común).

Solución de problemas y verificación rápida

  • No aparece la IP simulada: ejecuta ip addr show y verifica alias en la interfaz primaria.
  • Puerto 161 ocupado: identifica con ss/netstat y libera el puerto.
  • Respuestas incorrectas: revisa que el fichero cisco-snmprecordfile.txt no esté truncado.
  • SNMPv3: si el equipo original usaba SNMPv3, asegúrate de exportar credenciales compatibles o transformar el snapshot.

Comandos útiles:

# Ver procesos que usan puertos
sudo ss -tunlp

# Comprobar que el servicio está activo
sudo service simulatord status

# Probar SNMP desde otra máquina
snmpwalk -v2c -c public 192.168.160.34

Alternativas y enfoques complementarios

  • Simuladores alternativos: herramientas open source o comerciales como snmpsim (Python). snmpsim es especialmente útil si quieres generar respuestas programables desde scripts.
  • Virtualizar routers/switches completos (GNS3, EVE-NG) cuando necesitas emular comportamiento de capa 2/3, no solo respuestas SNMP.
  • Para pruebas de carga SNMP, usa scripts que lancen consultas concurrentes (GNU parallel, locust con adaptador SNMP).

Cuándo falla este enfoque (contraejemplos)

  • No sirve para probar comportamiento de forwarding o rutas reales: solo emula respuestas SNMP.
  • Equipos con SNMPv3 y política de seguridad estricta pueden no exportar datos completos para snapshot.
  • Si la aplicación requiere traps SNMP complejas basadas en eventos reales, necesitarás simular eventos o usar un simulador que soporte traps.

Lista de verificación por rol

Administrador de red:

  • Confirmar interfaz física y permisos de red.
  • Añadir alias IP y comprobar conectividad.

Ingeniero de monitorización:

  • Generar y validar el fichero snmpwalk.
  • Importar dispositivo en devices.conf con IP virtual.
  • Verificar que la herramienta de monitorización puede consultar la IP.

Equipo de seguridad:

  • Asegurar que la simulación solo esté en red de pruebas.
  • Restringir acceso a la consola del simulador.

Criterios de aceptación

  • El simulador responde a consultas SNMP en la IP virtual configurada.
  • La herramienta de monitorización recibe métricas básicas (uptime, interfaces, SNMP counters).
  • No hay conflictos de IP ni puertos abiertos inesperados.

Mini-playbook: pasos rápidos (resumen operativo)

  1. Instala Java y net-snmp.
  2. Descarga y descomprime vxsnmpsimulator.
  3. Ajusta simulator.conf (SIMULATOR_HOME, JRE_HOME, PRIMARY_INTERFACE).
  4. Genera el fichero snmpwalk y muévelo a device/.
  5. Edita devices.conf y añade el device con IP virtual.
  6. Arranca simulatord y abre consola. Usa SHOW.
  7. Añade la IP en tu sistema de monitorización y valida.

Buenas prácticas y seguridad

  • Ejecuta simulaciones en VLAN o red de laboratorio aislada.
  • NO reutilices comunidades SNMP “public” en producción.
  • Monitorea logs del simulador y limita acceso a la consola administrativa.

Glosario (1 línea cada término)

  • SNMP: Protocolo Simple de Gestión de Red, usado para consultar y cambiar parámetros de dispositivos.
  • OID: Identificador único de un objeto gestionable en una MIB.
  • snmpwalk: Herramienta cliente que recorre la MIB de un agente SNMP.
  • Simulador SNMP: Software que responde a consultas SNMP como si fuera un dispositivo real.

Resumen final

Has aprendido a extraer un snapshot SNMP de un dispositivo real, a configurarlo en Verax SNMP Agent Simulator, y a arrancar simulaciones para pruebas y monitorización. Usa las listas de verificación por rol y la mini-playbook para acelerar la puesta en marcha y aplica las comprobaciones de seguridad antes de exponer simulaciones en redes compartidas.

Notas importantes:

  • Este método es ideal para pruebas de monitorización, auditorías y ejercicios de escalabilidad. No sustituye la emulación completa de tráfico o comportamiento de capa 2/3.

Felicitaciones: ahora puedes clonar y simular múltiples dispositivos SNMP en tu entorno Linux para pruebas controladas.

Autor
Edición

Materiales similares

Podman en Debian 11: instalación y uso
DevOps

Podman en Debian 11: instalación y uso

Apt-pinning en Debian: guía práctica
Sistemas

Apt-pinning en Debian: guía práctica

OptiScaler: inyectar FSR 4 en casi cualquier juego
Guía técnica

OptiScaler: inyectar FSR 4 en casi cualquier juego

Dansguardian + Squid NTLM en Debian Etch
Redes

Dansguardian + Squid NTLM en Debian Etch

Arreglar error de instalación Android en SD
Android

Arreglar error de instalación Android en SD

Conectar carpetas de red con KNetAttach
Redes

Conectar carpetas de red con KNetAttach