Unable to use custom variable with limit_conn_zone

I am trying to use the limit connections / limit request. I have the
server
behind a proxy, the proxy has the following line :

proxy_set_header        X-Real-IP       $remote_addr;

and in my nginx.conf on my server behind the proxy i have :

limit_conn_zone $http_x_real_ip zone=perip:10m;
limit_conn perip 20;
limit_req_zone $http_x_real_ip zone=forward:10m rate=60r/m;

However, when checking my logs, I get the internal address of the proxy
server listed, not the external real ip :

2014/09/27 13:45:16 [error] 57287#0: *29475 limiting requests, 

excess:
30.536 by zone “forward”, client: 10.120.23.133

Can you see an issue with my configuration, or is there a bug with nginx
in
respect to using custom variables?

Posted at Nginx Forum:

On Saturday 27 September 2014 14:24:00 paulswansea wrote:

However, when checking my logs, I get the internal address of the proxy
server listed, not the external real ip :

2014/09/27 13:45:16 [error] 57287#0: *29475 limiting requests, excess:

30.536 by zone “forward”, client: 10.120.23.133

Can you see an issue with my configuration, or is there a bug with nginx in
respect to using custom variables?

[…]

IPs in log messages don’t related to variable from limit zone.
So there’s no problem. But if you want to see IP from the
header in logs, then you should configure the realip module:
http://http://nginx.org/en/docs/http/ngx_http_realip_module.html

wbr, Valentin V. Bartenev