UDP负载平衡端口

时间:2018-11-02 11:14:31

标签: nginx

假设我们的nginx具有简单的配置文件:

stream {
    upstream backend {
        hash $remote_addr;
        server localhost:5060;
    }

    server {
        listen 9999 udp;
        proxy_pass backend;
        proxy_timeout 1m;
    }
}  

因此,nginx侦听端口9999的传入UDP数据包,并将其转发到端口5060。我观察到的是:当2个不同的客户端开始发送数据包时,出现2行(使用命令sudo lsof -i -P -n | grep nginx):< / p>

  • nginx 28835 flame239 3u IPv4 UDP 127.0.0.1:57833->127.0.0.1:5060
  • nginx 28835 flame239 12u IPv6 UDP [::1]:57834->[::1]:5060

并且当客户端停止发送数据包时,在1分钟后,这2行消失(由于proxy_timeout 1m)。

问题是:

  • nginx是否为每个客户端(每个ip:port?)创建一个“输出” udp套接字(例如,具有端口57833)
  • 是真的吗,如果我们将一些udp数据包从5060发送回57783,我们为其创建此套接字的同一客户端将收到数据包?

0 个答案:

没有答案