nginx+emqx无法获取到客户端真实IP

EMQX版本:5.8.4
nginx: 1.26.2
nginx配置:
stream {
upstream mqtt_servers {
server 127.0.0.1:1883;
}

server {
  listen 8883 ssl;

  ssl_session_cache shared:SSL:10m;
  ssl_session_timeout 10m;
  ssl_certificate /usr/local/nginx/ssl/emqx.pem;
  ssl_certificate_key /usr/local/nginx/ssl/emqx.key;
  ssl_verify_depth 2;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers HIGH:!aNULL:!MD5;

  # 添加 CA 证书及开启验证客户端证书参数即可启用双向认证
  # ssl_client_certificate /usr/local/NGINX/certs/ca.pem;
  # ssl_verify_client on;
  # ssl_verify_depth 1;

  proxy_pass mqtt_servers;

  # 启用此项时,对应后端监听器也需要启用 proxy_protocol
  proxy_protocol on;
  proxy_connect_timeout 10s;
  # 默认心跳时间为 10 分钟
  proxy_timeout 1800s;
  proxy_buffer_size 3M;
  tcp_nodelay on;
}

}

emqx配置:

emqx连接日志:

数据流向:域名—>VIP—>nginx—>emqx

大佬帮忙看下

没看出问题:如果你图里的 IP 是拿到的 VIP,那你得找 VIP 看看为什么不把设备的 IP 传下来。
PS: 为什么要把 nginx 和 emqx 部署在同一台机器上,只是为了做 ssl 终结么,并没有部署集群?

还没有部署集群

已经解决
域名要开通 proxy protocol
并且
listen 8883 ssl proxy_protocol;
#必须要有
set_real_ip_from 11.0.0.0/8;

:ox: