Zonas CDN¶
Cuando los streamers están en distintas ciudades y redes, al espectador hay que mandarlo al cercano. Para eso están las zonas CDN: la IP del espectador se asigna a una zona por rutas CIDR, y el balanceador de reproducción elige un streamer vivo de la zona coincidente que tenga el stream.
Mientras ninguna zona tenga rutas CIDR, rige el comportamiento por defecto: los reproductores van a los streamers edge, si el clúster los tiene, y si no — al streamer donde el stream se captura. Para una instalación en una sola red suele bastar — las zonas llegan junto con la geografía.
Cómo se elige el streamer¶
- La IP del espectador se compara con las rutas CIDR de todas las zonas; gana el prefijo coincidente más largo.
- En la zona ganadora se busca un streamer vivo que lleve el stream.
- Si no lo hay — el espectador se lleva a la zona de reserva de esa zona, si está puesta.
- Desde ahí — el modo de entrega del streamer: con URL pública de payload el espectador recibe un redirect directo a la máquina, sin ella central proxya los medios a través de sí (vea la configuración del streamer).
Cree una zona¶
La pantalla Zonas CDN → Crear zona, un nombre corto como eu o mad.

Se abre el editor de la zona:
- Rutas CIDR — prefijos IPv4 e IPv6 en una sola lista:
10.0.0.0/8,2a02:6b8::/32. Un chip por prefijo; un CIDR inválido el formulario no lo acepta. - Zona de reserva — adónde llevar al espectador cuando esta zona no tiene streamer vivo con el stream.
Antes de guardar la primera ruta, asigne los streamers de reproducción a zonas y cubra las redes IPv4 e IPv6 de los espectadores. Después de guardar, los espectadores fuera de las rutas y los streamers fuera de la cadena de zonas permitida no podrán participar en la reproducción. Las zonas vacías pueden prepararse de antemano: por sí solas no cambian la reproducción.
Pulse Guardar. Si la zona se editó en paralelo, el editor muestra el mismo cartel de conflicto que los demás formularios: releer o sobrescribir.

Asigne los streamers¶
Una zona sin streamers no enruta nada. La pertenencia se fija del lado del streamer: el campo Zona CDN en su configuración. En el registro la zona se ve junto al nombre de la máquina.
Si los espectadores acaban donde no deben¶
- Un espectador cae en zona ajena. Revise las rutas: gana el prefijo más largo entre todas las zonas — una ruta más específica de otra zona pisa la suya.
- La zona coincidió pero el espectador se fue a otra parte. En la zona no se halló streamer vivo con el stream — se utilizó la siguiente zona explícita de la cadena. Mire el registro: ¿viven las máquinas de la zona y está el stream colocado en ellas?
- Los espectadores reciben la dirección de central en vez de la del streamer. El streamer no tiene URL pública de payload — central proxya los medios. Es un modo válido, pero todo el tráfico pasa por central.
Rutas explícitas y rechazo¶
La primera ruta CIDR válida activa las restricciones de reproducción en toda la instalación. Central selecciona únicamente nodos de la zona del cliente y de su cadena explícita fallback_zone. Se excluyen nodos sin zona y zonas ajenas. none (null en la API), una zona inexistente o una repetida terminan la cadena. Sin destinos aptos, central devuelve 503 con Retry-After; un stream desconocido devuelve 404.
Con el enrutamiento CDN activado, también se rechazan las solicitudes sin CIDR coincidente o sin IP del cliente. Configure explícitamente 0.0.0.0/0 para IPv4 y ::/0 para IPv6 si necesita una ruta general. Las zonas vacías no activan el enrutamiento CDN. Eliminar la última ruta CIDR restaura la selección sin restricciones: primero los streamers edge y después los streamers de captura.
El origen no es una reserva universal. Los espectadores de una oficina que falla pueden sobrecargarlo y afectar otras oficinas. Para permitirlo, asigne el nodo de origen a origin-pool, cree esa zona (puede dejar sus rutas vacías) y úsela como reserva de la oficina. El nombre no tiene significado especial. Un origen en la zona del cliente también está permitido explícitamente.
| Configuración | Cuando fallan todos los nodos de office-2 |
|---|---|
office-2 → none |
Rechazo; office-1 y el origen quedan excluidos |
office-2 → office-1 → none |
Solo office-1; después rechazo |
office-2 → origin-pool → none |
Solo origin-pool; después rechazo |
Carga y límites¶
Dentro de una zona, edge e ingest son iguales: se elige el nodo con menos sesiones Play activas y los empates se reparten uniformemente. El origen no tiene prioridad especial. JSON ordena las zonas según la cadena y los nodos por carga creciente; excluye direcciones privadas. GET normal admite proxy y entrega local.
La sección CDN del nodo ofrece dos campos independientes:
playback_session_limit: límite de sesiones Play activas, sin Publish.playback_bandwidth_kbit: tráfico saliente de todo el host en kbit/s, incluido el tráfico entre nodos. Es independiente denetwork_bandwidth_kbit, el presupuesto RX+TX de colocación.
Vacío elimina el límite; 0 impide nuevas selecciones. Un valor igual o superior al límite excluye el nodo. Si todos quedan excluidos, se intenta la siguiente zona explícita. Sin métricas necesarias se excluye el nodo; el último informe sirve mientras esté online. Los límites explícitos también se aplican sin zonas.
Estos límites afectan a nuevas decisiones de central. El retraso de informes y las URL ya emitidas permiten superar el límite. No limitan el ancho de banda ni terminan sesiones. El reproductor recibe cambios al volver a solicitar rutas; las URL existentes no se revocan.
Para VOD, primero se filtran las ubicaciones disponibles por zonas permitidas; después se elige la revisión máxima disponible, la zona y la carga. Una réplica reciente prohibida no excluye una antigua permitida; una reserva permitida más reciente puede prevalecer sobre la copia local antigua.
Un proxy de confianza¶
Introduzca CIDR en Proxies de confianza del clúster, en la configuración compartida de central, un prefijo por línea. La lista se aplica a todo el clúster, incluidas todas las instancias de central y los streamers, sin excepciones locales. Por ejemplo:
192.0.2.10/32
2001:db8::10/128
Solo de un par de confianza se acepta la última IP de X-Forwarded-For. El proxy debe añadir la dirección real del cliente. Si falta o es inválida, se usa la IP de la conexión; se ignora X-Real-IP. Una lista vacía no confía en cabeceras. No se admite una cadena de varios proxies de confianza.
Los cambios y el vaciado de la lista se aplican automáticamente al actualizar la configuración, sin reiniciar. Un CIDR inválido se rechaza y el campo muestra el error. La API expone trusted_proxies mediante PATCH /central/api-v4/config; un array vacío o null elimina la confianza en todos los proxies. El listener determina el esquema de la URL pública.