I have set up a NGINX reverse proxy with the following configuration using Stream context and also enabled the transparent mode so that I can log the client IP addresses at the upstream servers.
user root
stream
{
upstream stream_backend
{
server x.x.x.x:1234;
}
server{
listen 443;
proxy_bind $remote_addr transparent;
proxy_pass stream_backend;
}
}
When the transparent mode is enabled, the incoming packets are not received at the server (packet captures) and the packet capture on the reverse proxy just reveals a TCP SYN and retransmissions for the same. When the transparent mode is disabled, the packets are received at the server.
I made sure that nginx is running as root, firewall is disabled and tried connecting on 2 different sockets since transparent mode works by binding the sockets underneath.
Is there something I am missing with respect to the configuration, modules? How can I get this to work?
PS: Facing a similar issue using proxy protocol