Solucionar problemas de calidad en las videollamadas de Nextcloud Talk y de conexión con el servidor TURN.

Los problemas con las llamadas de Nextcloud Talk suelen describirse como "mala calidad de vídeo", pero las causas subyacentes no son siempre las mismas. Un usuario puede tener suficiente ancho de banda y aun así no poder conectarse porque un cortafuegos bloquea el tráfico WebRTC punto a punto. Otra llamada puede conectarse correctamente a través de TURN, pero percibirse como más lenta debido a la transmisión de todo el contenido multimedia. Una reunión numerosa puede presentar problemas incluso con un servidor TURN que funcione a la perfección, ya que la implementación sigue utilizando la topología punto a punto integrada en lugar del backend de alto rendimiento.

Por lo tanto, el enfoque más útil para la resolución de problemas consiste en separar la conectividad , la ruta de medios y la escalabilidad . A fecha de 6 de octubre de 2026, la documentación oficial de Nextcloud Talk sigue describiendo TURN como la alternativa cuando no es posible la conectividad WebRTC directa y recomienda el puerto 443 para una compatibilidad máxima. También indica que puede ser necesario un servidor TURN cuando se utiliza el backend de alto rendimiento. Consulte la documentación oficial de Nextcloud Talk TURN y la guía oficial de configuración de coturn para Talk .

¿Qué deberías solucionar primero: el ancho de banda, TURN o el backend de alto rendimiento?

Utilice el patrón de síntomas para elegir la siguiente acción en lugar de cambiar varias configuraciones a la vez.

SíntomaÁrea más probablePrimera acciónCompensación
La llamada funciona en una red, pero falla desde una red corporativa o de hotel.Cortafuegos, NAT o fallo de TURN faltanteVerificar TURN sobre UDP/TCP y, donde sea necesario, TLS en el puerto 443.El reenvío mejora la accesibilidad, pero consume ancho de banda TURN y puede aumentar la latencia.
Las llamadas entre dos personas funcionan bien, pero las llamadas con más personas se vuelven inestables.Topología de llamadas y carga del cliente/carga de CPUEvaluar el backend de alto rendimiento de Nextcloud TalkMás infraestructura, pero mejor escalabilidad para llamadas con múltiples participantes.
El vídeo se conecta, pero se ve pixelado o se congela.Pérdida de paquetes, latencia, Wi-Fi, capacidad de enlace ascendente o sobrecarga de los puntos finales.Pruebe desde una red cableada o que funcione correctamente antes de cambiar TURN.TURN no puede crear ancho de banda que no esté disponible.
La prueba TURN falla aunque coturn se está ejecutando.Desajuste de clave secreta, cortafuegos, asignación NAT, DNS o puertos de retransmisiónVerifique las credenciales, la asignación de IP pública y el rango de retransmisión.Abrir un amplio rango de relés es más sencillo; reducirlo disminuye los puertos expuestos, pero requiere una planificación de capacidad deliberada.
Diseño ilustrativo de una llamada grupal de Nextcloud Talk con tres participantes y controles de llamada estándar visibles.
Un ejemplo de configuración para llamadas grupales en Talk. Si las llamadas pequeñas funcionan pero las más grandes se degradan, investigue la topología y la carga de los terminales en lugar de asumir que TURN por sí solo solucionará el problema.

Paso 1: identifique si el problema se debe a la conectividad o a la calidad del medio.

Comience con dos pruebas breves. Primero, realice una llamada entre dos clientes en redes sencillas, como dos conexiones de banda ancha normales. Luego, repita la prueba desde una red con restricciones, como una red Wi-Fi corporativa, una VPN o un punto de acceso móvil. Si solo falla la red con restricciones, TURN es un fuerte sospechoso. Si ambas llamadas se conectan, pero la calidad del video es deficiente, recopile información sobre la red y los dispositivos antes de modificar la arquitectura de retransmisión.

La secuencia de conexión documentada de Nextcloud intenta primero la conectividad directa entre pares, utiliza STUN para descubrir direcciones accesibles y recurre a TURN cuando no se puede establecer una ruta directa. Esto significa que TURN es principalmente una alternativa de conectividad , no un optimizador universal de la calidad de vídeo. Una ruta retransmitida puede ser más fiable, pero también es más larga y transfiere el ancho de banda multimedia al servidor TURN.

Paso 2: configurar coturn para Nextcloud Talk

Para implementaciones autoalojadas, coturn es la implementación de TURN más común documentada por Nextcloud. Nextcloud recomienda la autenticación con clave compartida para esta integración. Genere una clave secreta aleatoria segura y utilice el mismo valor tanto en coturn como en la configuración de administración de Talk.

openssl rand -hex 32

Una configuración mínima normalmente incluye un puerto de escucha, huella digital, autenticación con clave compartida, un dominio y restricciones de pares. La ubicación exacta del archivo depende de su sistema operativo y paquete. Una configuración representativa es:

listening-port=443
fingerprint
use-auth-secret
static-auth-secret=REPLACE_WITH_RANDOM_SECRET
realm=turn.example.com
total-quota=0
bps-capacity=0
stale-nonce
no-multicast-peers

Las versiones anteriores de coturn pueden requerir opciones que las versiones más recientes ya no necesitan, así que no copie una configuración antigua sin más. El documento actualizado de Nextcloud coturn indica explícitamente las directivas que dependen de la versión. Compruebe la versión de coturn instalada con las instrucciones actuales de Nextcloud coturn .

Si coturn está detrás de NAT, configure correctamente su asignación de direcciones públicas a privadas. La propia documentación de configuración de coturn explica la external-ipasignación y exige que los puertos de retransmisión se asignen de forma consistente a través de NAT. Consulte el ejemplo de configuración de coturn en la fuente original .

Editor de terminal que muestra una configuración de coturn con puerto 443, autenticación de clave compartida, dominio, cuotas y rutas de certificado TLS opcionales.
Elementos de configuración de ejemplo para Nextcloud Talk: puerto 443, autenticación con clave compartida, configuración del dominio y rutas de certificados TLS opcionales.

UDP, TCP o TLS: ¿cuál debería habilitar?

Para la transmisión de contenido multimedia en tiempo real, UDP suele ser el protocolo de transporte preferido, ya que evita la retransmisión TCP y el bloqueo de cabecera de cola. Sin embargo, algunas redes corporativas y de invitados bloquean UDP por completo. TCP o TURN sobre TLS pueden ofrecer una alternativa viable en redes que solo permiten tráfico web.

Para una máxima accesibilidad, Nextcloud recomienda escuchar en el puerto 443 y admite TURN/TLS. El uso de ambos turn:mejora turns:la compatibilidad, pero también implica la gestión de certificados y rutas de transporte adicionales. Si todos los usuarios se encuentran en redes controladas donde se sabe que UDP funciona, un diseño más sencillo que priorice UDP puede ser más fácil de operar. Si los usuarios se conectan habitualmente desde hoteles, instalaciones de clientes, oficinas con acceso restringido o VPN, la configuración adicional suele justificar el uso de TCP/TLS como alternativa.

Paso 3: abrir correctamente los puertos de escucha y retransmisión.

Un error común es abrir únicamente el puerto de escucha de TURN. El cliente primero se comunica con coturn a través de su servidor de escucha, pero coturn también asigna puntos finales de retransmisión para el tráfico multimedia. La configuración predeterminada de coturn para el tráfico ascendente utiliza puertos UDP 49152-65535para la asignación de retransmisión. Si este rango está bloqueado por el firewall del host, el grupo de seguridad en la nube, el enrutador ascendente o el dispositivo NAT, la autenticación puede ser exitosa, pero el tráfico multimedia sigue fallando.

Puedes mantener el rango de relés predeterminado o reducirlo deliberadamente con min-porty max-port. La disyuntiva es clara: un rango amplio es operativamente sencillo y ofrece mucha capacidad de asignación; un rango estrecho es más fácil de describir en la política del firewall, pero puede convertirse en un cuello de botella de capacidad si demasiados relés simultáneos necesitan puertos. Dimensiona un rango reducido a partir de la concurrencia esperada en lugar de elegir un número pequeño arbitrario.

Si el host TURN tiene una dirección privada detrás de un enrutador, conserve la asignación de puertos uno a uno para el rango de retransmisión seleccionado y configure la asignación de direcciones públicas en coturn. Si el host tiene una IP pública directamente en su interfaz, el paso de asignación NAT es innecesario.

Ilustración de las reglas del firewall que permiten el puerto TCP y UDP 443, además del rango de retransmisión UDP de retorno 49152 a 65535.
Planificación del firewall para coturn: permita el oyente TURN y el rango de relés configurado. El rango mostrado es el valor predeterminado documentado de coturn, no un valor obligatorio.

Paso 4: agregue el servidor TURN en Nextcloud Talk

Abra el área de administración de Nextcloud y vaya a la configuración de Talk. Agregue el servidor TURN usando el host y el puerto directamente, no una http://URL https://. La documentación actual de Talk de Nextcloud indica que el esquema TURN se selecciona por separado, por lo que el campo del servidor debe tener el formato turn.example.com:443.

Introduzca la misma clave compartida configurada en coturn y habilite los protocolos que su servidor acepta. Si utiliza TLS, seleccione el esquema TURN correspondiente y asegúrese de que el certificado coincida con el nombre de host TURN. También puede usar su propio servicio TURN como servidor STUN, lo que simplifica la administración del host, aunque mantener STUN y TURN separados puede ser útil cuando se requieren dominios de fallo independientes o repetidores distribuidos geográficamente.

No revele la clave secreta compartida en capturas de pantalla, tickets ni ejemplos de configuración públicos. Nextcloud la utiliza para obtener credenciales TURN temporales para los clientes.

Paso 5: pruebe a los candidatos de ICE y luego pruébelos desde una red restrictiva.

Tras guardar la configuración de Talk, utilice la comprobación administrativa que verifica si el servidor TURN devuelve candidatos ICE utilizables. Un resultado satisfactorio demuestra que el navegador pudo obtener candidatos que funcionan correctamente del servicio TURN configurado. Esto no garantiza que todas las redes de usuarios, todas las rutas de retransmisión y todas las llamadas de gran tamaño funcionen correctamente.

Repita una llamada real desde al menos una red con restricciones. Esto es importante porque una verificación del servidor puede ser exitosa mientras que la red del usuario aún bloquea UDP, la resolución DNS o un protocolo de transporte específico. Si UDP falla, pero TCP/TLS en el puerto 443 funciona, mantenga la ruta alternativa. Si todas las rutas fallan, revise los registros del firewall, los registros de coturn, el DNS, la validez del certificado, la clave compartida y la asignación NAT.

Comprobación ilustrativa de la administración de Nextcloud Talk que muestra el estado correcto de STUN y TURN con candidatos ICE utilizables.
Una comprobación exitosa de un candidato ICE es una señal de configuración sólida, pero aún son necesarias llamadas reales desde redes restrictivas para verificar la accesibilidad de extremo a extremo.

¿Cuándo deberías añadir el backend de alto rendimiento?

TURN y el backend de alto rendimiento resuelven problemas diferentes. TURN reenvía el tráfico cuando los clientes no pueden establecer la ruta WebRTC necesaria. El backend de alto rendimiento modifica la forma en que se gestionan los medios multiparticipantes, de modo que cada participante no tenga que subir una transmisión independiente a todos los demás.

La interfaz Talk de Nextcloud advierte que ejecutarlo sin el backend de alto rendimiento está pensado únicamente para llamadas muy pequeñas, generalmente descritas en el proyecto como de dos o tres participantes. Si el problema solo aparece al aumentar el número de participantes, añadir TURN puede permitir la conexión de más clientes, pero no eliminará la carga de subida peer-to-peer ni el consumo de CPU. Consulte los requisitos del sistema de Nextcloud Talk y la guía del proyecto sobre el backend de alto rendimiento antes de aumentar el número de llamadas grupales.

Incluso con el backend de alto rendimiento, mantenga TURN disponible cuando los usuarios se conecten desde redes con restricciones. Nextcloud documenta un rango de medios WebRTC predeterminado 20000-40000para el backend y señala específicamente que un cliente limitado al puerto 443 aún podría requerir TURN para reenviar paquetes a ese rango del backend.

TURN autogestionado frente a TURN gestionado

OpciónVentajasCostos y límitesMejor ajuste
Co-retorno autogestionadoControl total, ruta de datos bajo su administración, configuración predecible.Usted gestiona certificados, actualizaciones, monitoreo, ancho de banda, política de firewall y capacidad geográfica.Organizaciones con habilidades de infraestructura o requisitos de control estrictos
Turno gestionadoMenor esfuerzo operativo y cobertura geográfica potencialmente más sencilla.El costo del servicio continuo y los medios pueden transitar por un proveedor de retransmisión de terceros.Equipos que priorizan la simplicidad operativa y el alcance multirregional.
No girarMenor coste de servidor y ruta más corta cuando WebRTC directo siempre funciona.Las llamadas pueden fallar en NAT simétricas y cortafuegos restrictivos.Entornos controlados donde las redes de los clientes son conocidas y han sido probadas.

Lista de verificación práctica para la puesta a punto

  • Siempre que sea posible, utilice WebRTC directo. Generalmente, minimiza los costos de retransmisión y la latencia.
  • Proporcionar TURN para garantizar la fiabilidad. Utilizarlo como una ruta de respaldo para condiciones difíciles de NAT y cortafuegos.
  • Utilice UDP primero y TCP/TLS para garantizar la compatibilidad. El puerto 443 es la opción de escucha más compatible con cortafuegos recomendada por Nextcloud.
  • Abra el rango de retransmisión, no solo el oyente. Adapte las reglas del firewall y NAT a la configuración min-portactual max-port.
  • Supervise el ancho de banda de TURN. Las llamadas retransmitidas pueden mover un tráfico multimedia considerable a través del host TURN, por lo que la capacidad de la red suele ser más importante que la CPU.
  • Separe los problemas de escala de los problemas de conectividad. Para reuniones más grandes, evalúe el sistema backend de alto rendimiento en lugar de forzar un mayor tráfico a través de TURN.
  • Validar con redes de usuarios reales. Es necesario realizar una prueba ICE, pero las redes de hoteles, corporativas, VPN y móviles pueden comportarse de manera diferente.

En resumen

Si Nextcloud Talk funciona en algunas redes pero no en otras, configure un servicio TURN accesible correctamente y verifique el oyente, la clave compartida, la asignación NAT y los puertos de retransmisión. Si las llamadas se conectan pero la calidad es deficiente, primero mida la carga de la red del cliente y del punto final, ya que TURN puede aumentar la latencia en lugar de eliminarla. Si el problema se agrava con el número de participantes, la solución arquitectónica más adecuada suele ser el backend de alto rendimiento, manteniendo TURN como vía de compatibilidad para redes restringidas.

Dejar un comentario

Cómo configurar Kopano Z-Push para la sincronización móvil ActiveSync

Cómo configurar Kopano Z-Push para la sincronización móvil ActiveSync

Configure Z-Push con Kopano para la sincronización segura de correo electrónico, contactos, calendario y tareas mediante ActiveSync. Compare las opciones de backend e implementación y, a continuación, verifique la configuración móvil.

Solucionar el problema de Jitsi Meet: "Te has desconectado" y caídas de conexión.

Solucionar el problema de Jitsi Meet: "Te has desconectado" y caídas de conexión.

Solucione los problemas de desconexión de Jitsi Meet con una lista de verificación práctica para navegadores, dispositivos móviles, redes inestables, cortafuegos y servidores autogestionados.

Solucionar problemas de calidad en las videollamadas de Nextcloud Talk y de conexión con el servidor TURN.

Solucionar problemas de calidad en las videollamadas de Nextcloud Talk y de conexión con el servidor TURN.

Solucione los problemas de calidad de las llamadas de Nextcloud Talk, configure coturn, abra los puertos correctos, pruebe los candidatos ICE y decida cuándo TURN o HPB es la solución adecuada.

Cómo alojar un cliente web de elementos personalizados en Nginx

Cómo alojar un cliente web de elementos personalizados en Nginx

Implementa Element Web en Nginx con un servidor principal personalizado, HTTPS, almacenamiento en caché y encabezados de seguridad, además de comprobaciones sencillas para detectar problemas de configuración comunes.

Solucionar el error de carga de presentaciones de BigBlueButton: “Tipo de archivo no compatible”

Solucionar el error de carga de presentaciones de BigBlueButton: “Tipo de archivo no compatible”

Solucione el error de presentación "Tipo de archivo no compatible" de BigBlueButton comprobando la extensión del archivo, exportando un PDF real, probando con otro archivo e identificando cuándo debe ponerse en contacto con un administrador.

Solucionar el error "Demasiados archivos abiertos" de Matrix Synapse en systemd

Solucionar el error "Demasiados archivos abiertos" de Matrix Synapse en systemd

Solucione los errores de Matrix Synapse "Demasiados archivos abiertos" comprobando el límite del servicio, aplicando una modificación de systemd y verificando el proceso en ejecución.

Cómo configurar la búsqueda de texto completo en Nextcloud usando Elasticsearch 8

Cómo configurar la búsqueda de texto completo en Nextcloud usando Elasticsearch 8

Configura la búsqueda de texto completo de Nextcloud con Elasticsearch 8, instala las aplicaciones necesarias, configura el índice, ejecuta el primer rastreo y verifica los resultados de la búsqueda.

Cómo configurar un bot de matriz con Python y la biblioteca Simple-Matrix-Bot-Lib.

Cómo configurar un bot de matriz con Python y la biblioteca Simple-Matrix-Bot-Lib.

Crea un bot de Matrix con Python y Simple-Matrix-Bot-Lib, compara las opciones de autenticación y despliegue, prueba los comandos y comprende cuándo usar matrix-nio en su lugar.

Cómo instalar Jitsi Meet en Ubuntu 24.04 con SSL de Let's Encrypt

Cómo instalar Jitsi Meet en Ubuntu 24.04 con SSL de Let's Encrypt

Instala Jitsi Meet en Ubuntu 24.04 con DNS, reglas de firewall, repositorios oficiales, SSL de Let's Encrypt, comprobaciones de servicio y solución de problemas de NAT.

Solucionar el error "Error en la verificación del certificado SSL" en el cliente de sincronización de escritorio de ownCloud

Solucionar el error "Error en la verificación del certificado SSL" en el cliente de sincronización de escritorio de ownCloud

Solucione los errores de certificado de sincronización de ownCloud Desktop comprobando la URL del servidor, el nombre y la cadena del certificado, la hora del sistema, la versión del cliente y el almacén de CA de confianza.