# Equipos de red

## Para qué sirve

Con **Equipos de red** ves el estado de tus switches, routers, firewalls y puntos de acceso: si responden, cuánto usan de CPU y memoria, qué interfaces están caídas o saturadas, la temperatura y con qué equipos vecinos se conectan. Los consulta un [gateway](https://lymen.app/docs/instalacion/gateways/) desde adentro de tu red; los equipos nunca necesitan salir a internet.

Conceptos que vas a ver:

- **SNMP v3**: el protocolo estándar con el que casi todos los equipos de red informan su estado. La versión 3 usa usuario y claves; es la única que usa Lymen.
- **Trampas (traps)**: avisos que el equipo manda por su cuenta cuando pasa algo (por ejemplo, una interfaz se cae).
- **Syslog**: los mensajes de registro que el equipo manda a un servidor.
- **Ping**: la prueba más simple, para saber si el equipo contesta.
- **Perfil**: un conjunto de datos propios de un fabricante (Cisco, MikroTik…) que se suman a lo estándar.

## Cuándo usarlo

- Querés saber cuándo se cae un switch o un enlace antes de que llamen de la sala.
- Querés ver qué interfaces están saturadas.
- Querés recibir las trampas y el syslog de tus equipos en un solo lugar.

## El principio de seguridad: vos aprobás, el gateway obedece

Lymen **solo consulta lo que aprobaste en el archivo `red-permitidos.yaml` del propio gateway**. Lo que no figura ahí se rechaza, aunque se lo pidas desde el portal. Es un archivo del servidor, de root, que el programa lee pero no puede cambiar. Un archivo ausente, roto o con campos desconocidos significa "todo denegado".

Además, las credenciales SNMP v3 se cargan en el **Llavero** con el alcance **Solo en tu red** y quedan **selladas para ese gateway**: ni Lymen puede leerlas.

## Requisitos

1. Un [gateway](https://lymen.app/docs/instalacion/gateways/) activo **en Linux**. El instalador de Windows hoy no incluye el monitoreo de equipos de red.
2. Una **credencial SNMPv3** en el Llavero, con alcance *Solo en tu red*, sellada para ese gateway. Sin credencial, solo podés usar ping.
3. Los equipos con SNMP v3 habilitado y con el usuario creado.
4. El archivo `red-permitidos.yaml` con las direcciones de los equipos.

## Paso a paso

### 1. Aprobar los equipos en el gateway

Editá `/etc/lymen-agent/red-permitidos.yaml` en el servidor gateway (como root):

```yaml
version: 1
monitorear: [10.20.0.15, 192.168.5.0/24]
descubrir: [10.20.0.0/24]
escuchar:
  trampas: "0.0.0.0:162"
  syslog: "0.0.0.0:514"
```

El instalador lo crea con `version: 1` y las listas vacías. Los cambios en `monitorear` y `descubrir` se toman solos (el archivo se vuelve a leer cuando cambia); si cambiás `escuchar`, **reiniciá el servicio** `lymen-red`. En el portal vas a ver lo aprobado dentro de un minuto.

### 2. Dar de alta el equipo

1. **Agregar datos › Equipos de red › Agregar equipo** (o **Equipos de red › Agregar equipos**).
2. Completá el formulario (campos en la tabla de abajo).
3. Si la dirección todavía no está aprobada en el gateway, el portal te lo avisa: se guarda igual, pero **no se consulta** hasta que la agregues a `monitorear`.
4. Tocá **Agregar**.

### 3. O buscarlos en un rango

**Buscar en un rango** pregunta por SNMP v3 a cada dirección de un rango y te muestra los equipos que respondieron, para que elijas cuáles dar de alta.

1. Elegí el **gateway que busca** (el portal muestra los rangos aprobados para buscar).
2. Escribí el **rango**, por ejemplo `10.20.0.0/24`. Tiene que estar completo dentro de uno aprobado en `descubrir`.
3. Marcá hasta **3 credenciales SNMPv3** para probar.
4. Tocá **Buscar**. Puede tardar unos minutos según el tamaño del rango.
5. Marcá los equipos que quieras y tocá **Agregar N equipos**. Cada uno toma el nombre que él mismo informa y la credencial con la que respondió.

Si pedís un rango no aprobado, el gateway lo rechaza **sin mandar un solo paquete** y el portal te explica por qué.

Límites de la búsqueda: rangos IPv4 de `/22` a `/30` (hasta 1.024 direcciones), hasta 200 equipos encontrados, 100 pedidos por segundo en total y 16 en paralelo, para no molestar a tu red. Solo un descubrimiento a la vez por gateway.

## Campos del equipo

| Campo | Para qué sirve | Por defecto | Valores válidos | Impacto de cambiarlo |
|---|---|---|---|---|
| **Nombre** | Cómo lo ves en el portal. | — | Letras, números, punto, guion y guion bajo; empieza con letra o número; hasta 63. **No se cambia después.** | Es único por cuenta. |
| **Dirección IP** | A qué dirección consulta el gateway. | — | IPv4 o IPv6; **no se admiten nombres** (no se resuelve DNS). No sirven `0.x`, `127.x`, `169.254.x` ni multicast. | Tiene que estar aprobada en `monitorear`. Una por gateway. |
| **Puerto SNMP** | Puerto del equipo. | 161 | 1 a 65535 | Si no coincide con el equipo, no responde. |
| **Gateway que lo consulta** | Qué gateway hace las consultas. | El primero de la lista | Un gateway activo | Cambiarlo requiere credencial sellada para el nuevo gateway. Un gateway monitorea hasta **300 equipos**. |
| **Consultar por SNMP v3** | Prende las consultas SNMP. | Encendido | Encendido / apagado | Apagado, solo se hace ping y no se ven CPU, memoria ni interfaces. |
| **Credencial SNMPv3** | Usuario y claves con las que se consulta. | — | Una credencial del Llavero sellada para ese gateway | Si el equipo la rechaza, el estado dice *Credencial rechazada*. |
| **Perfil del fabricante** | Qué datos propios leer. | Detectar solo | *Detectar solo*, Cisco, MikroTik, Fortinet, Ubiquiti, HP / Aruba, Genérico (MIB-II) | Un perfil equivocado puede mostrar datos vacíos. *Detectar solo* es lo más seguro. |
| **Cada cuánto se consulta** | Frecuencia de las consultas. | 1 minuto | 30 segundos, 1, 2 o 5 minutos | Menos tiempo = detecta antes, pero carga más al equipo y a la red, y guarda más datos (costo). |
| **Ping** | Prueba si responde. | Encendido | Encendido / apagado | Tiene que estar encendido SNMP o ping. Algunos equipos bloquean el ping. |
| **Trampas SNMP v3** | Recibe los avisos que manda el equipo. | Apagado | Encendido / apagado (requiere SNMP) | Hace falta que el gateway tenga aprobado `escuchar.trampas`. Solo se aceptan de equipos dados de alta. |
| **Syslog** | Recibe los mensajes de registro del equipo. | Apagado | Encendido / apagado | Hace falta `escuchar.syslog` aprobado. El volumen puede ser alto: afecta almacenamiento y costo. |

En el equipo, además, tenés que apuntar las trampas y el syslog a la dirección del gateway.

## El archivo `red-permitidos.yaml`

Está en `/etc/lymen-agent/red-permitidos.yaml`, es de root, y se lee sin reiniciar (salvo `escuchar`). Máximo 64 KB y 200 entradas entre `monitorear` y `descubrir`.

| Campo | Para qué sirve | Por defecto | Valores válidos | Impacto de cambiarlo |
|---|---|---|---|---|
| `version` | Versión del formato. | `1` | `1` (también se acepta omitirla) | Otro valor deja todo denegado. |
| `monitorear` | Equipos que se pueden monitorear (SNMP v3 y ping). | `[]` (nada) | Direcciones o rangos CIDR **privados**; rangos IPv4 hasta `/16` (65.536 direcciones). Para IPv6 hasta `/112`. | Cuanto más amplio el rango, más equipos pueden llegar a consultarse. Aprobá lo mínimo. |
| `descubrir` | Rangos donde se pueden **buscar** equipos nuevos. Lo descubierto también se puede monitorear. | `[]` | Rangos IPv4 privados hasta `/22` (1.024 direcciones). En IPv6, solo direcciones sueltas. | Habilita barridos de red desde el gateway. |
| `escuchar.trampas` | Dónde escucha las trampas SNMP v3. | Vacío: no escucha | `dirección:puerto`, por ejemplo `"0.0.0.0:162"` | Abre un puerto en el gateway (162 es privilegiado; el servicio ya tiene el permiso). Limitá la red desde el firewall. |
| `escuchar.syslog` | Dónde escucha el syslog (UDP y TCP). | Vacío: no escucha | `dirección:puerto`, por ejemplo `"0.0.0.0:514"` | Ídem. Solo se aceptan mensajes de equipos dados de alta. |

Solo se aceptan **redes privadas**: `10.x`, `172.16` a `172.31`, `192.168.x`, `100.64` a `100.127` e IPv6 `fc00::/7`. Una dirección pública, de loopback, de enlace local (`169.254.x`) o multicast **no se acepta ni escrita a mano**. Los rangos tienen que estar bien escritos (`10.20.0.0/24`, no `10.20.0.5/24`).

## Perfiles de fabricante

Todos los equipos se leen con lo estándar (interfaces, tráfico, errores, descartes, vecinos por LLDP o CDP, CPU y memoria cuando el equipo los publica). Los perfiles suman datos propios de cada marca:

| Perfil | Marca |
|---|---|
| Detectar solo | Elige el perfil según lo que el equipo informa de sí mismo. |
| Cisco | Cisco IOS, IOS-XE y NX-OS: CPU, memoria y sensores. |
| MikroTik | RouterOS: temperatura (CPU y memoria salen de lo estándar). |
| Fortinet | FortiGate: CPU y memoria. |
| Ubiquiti | UniFi, EdgeOS y airMAX: reconoce el equipo; CPU y memoria por lo estándar. |
| HP / Aruba | HP ProCurve, HPE y Aruba: CPU y memoria. |
| Genérico (MIB-II) | Respaldo para cualquier equipo con SNMP. |

> **Importante.** Los perfiles se probaron con un agente SNMP de prueba, **no con equipos reales de cada marca**. Si un dato propio no aparece, el resto igual se muestra. Contanos qué ves en tus equipos.

## Qué ves de cada equipo

En **Equipos de red** hay una lista con resumen y buscador (por nombre, dirección, fabricante o etiqueta), con los equipos con problemas primero. El detalle muestra: fabricante y perfil, modelo, gateway, credencial, frecuencia, último dato, estado de SNMP y de ping (con milisegundos), CPU, memoria, temperatura, qué más escucha, **Interfaces** (estado, tráfico de entrada y salida, uso del enlace, errores y descartes por hora) y **Vecinos**. Podés **Editar** y **Eliminar** el equipo, y ponerle etiquetas. Los equipos también aparecen en Topología, con el interruptor **Red**.

Estados de un equipo: **Responde**, **Caído**, **Sin datos** y **Sin permiso del gateway** (la dirección no está aprobada en `red-permitidos.yaml`).

## Ejemplo completo

```yaml
# /etc/lymen-agent/red-permitidos.yaml
version: 1
monitorear:
  - 10.20.0.1            # router del edificio
  - 10.20.0.10           # switch core
  - 192.168.5.0/24       # puntos de acceso Wi-Fi
descubrir:
  - 10.20.0.0/24         # para buscar equipos nuevos en la red de sistemas
escuchar:
  trampas: "0.0.0.0:162"
  syslog: "0.0.0.0:514"
```

## Problemas comunes

| Síntoma | Qué hacer |
|---|---|
| "Sin permiso del gateway" | Agregá la dirección (o su rango) a `monitorear` y esperá un minuto. |
| "El archivo tiene un error" (en el formulario) | El YAML tiene un campo desconocido, un rango público o demasiado grande, o bits de más. Corregilo: mientras tenga error, **todo queda denegado**. |
| "Credencial rechazada" | Revisá usuario, protocolo y claves en el Llavero y en el equipo. |
| "Credencial no disponible en el gateway" | La credencial no está sellada para ese gateway. Cargala de nuevo con alcance *Solo en tu red* para ese gateway. |
| "No responde" con SNMP, pero el ping anda | El equipo no tiene SNMP v3 habilitado, el puerto es otro o un firewall bloquea el 161 desde el gateway. |
| Ping "No disponible en el gateway" | El gateway no pudo abrir el socket de ping. El servicio necesita el permiso de red crudo. |
| "Ese gateway ya monitorea el máximo de equipos (300)" | Repartí los equipos entre dos gateways. |
| No llegan trampas ni syslog | Verificá `escuchar`, reiniciá `lymen-red`, abrí el puerto en el firewall y apuntá el equipo a la dirección del gateway. |
| "Ese servidor no es un gateway activo" | Activá el rol de gateway en el servidor ([Gateways](https://lymen.app/docs/instalacion/gateways/)). |
