UDP LoadBalancer usando Nginx para CoTURN

UDP LoadBalancer usando Nginx para CoTURN

Estoy intentando agregar un Nginx UDP LoadBalancer delante de CoTURN.

  • Ejabberd instalado en una VM
  • Nginx instalado en una VM
  • Coturn instalado en una VM

Configuración de Nginx:

log_format    basic    '$remote_addr [$time_local] '
                       '$protocol $status $bytes_sent $bytes_received '
                       '$session_time';

# Enable access_log statements for debugging

access_log /var/log/nginx/stream.log basic buffer=32k;

upstream stream_cluster {
#    hash $remote_addr consistent;
    least_conn;
    server 30.40.50.60:3478;
    server 30.40.50.61:3478;
}

server {
    listen 3478 udp reuseport;
    listen 3478;
    #All UDP/TCP traffic will be forwarded to the cluster
    proxy_buffer_size 4096k;
    proxy_responses 0;
    proxy_bind $remote_addr transparent;
    proxy_protocol on;
    proxy_pass stream_cluster;
    allow all;
#    error_log /var/log/nginx/stream.log;
}

coturn funciona bien cuando se usa directamente junto con ejabberd. Todos los puertos requeridos están abiertos en la Política de seguridad. Pero nginx no pasa los datos al flujo ascendente. He seguido la documentación oficial de nginx.

No estoy seguro de qué estoy haciendo mal.

información relacionada