nginx not setting REMOTE_ADDR properly?

Mohammad Kolahdouzan mohammad_ysm at
Thu Mar 5 07:29:57 MSK 2009

I monitored the HTTP headers of the requests that are forwarded to Nginx by the load balancer using tcpdump, and I can clearly see that the remote IP is added to the headers as a new header "REMOTE ADDR:", still use $http_x_forwarded_for it?


From: Abhishek Singh <abhishek.rhce at>
To: nginx at
Sent: Wednesday, March 4, 2009 7:06:18 PM
Subject: Re: nginx not setting REMOTE_ADDR properly?

Use "$http_x_forwarded_for" to log client real ip address.

On Thu, Mar 5, 2009 at 8:22 AM, Mohammad Kolahdouzan <mohammad_ysm at> wrote:

My nginx is getting requests through a (NetScaler) load balancer, and $remote_addr is returning the load balancer's IP and not the real user's IP (which the load balancer sets as REMOTE_ADDR in the header). Any other attribute I should use to get the real user's IP?


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the nginx mailing list