Where does $remote_addr come from?
francis at daoine.org
Fri Feb 3 08:35:03 UTC 2017
On Thu, Feb 02, 2017 at 05:02:43PM -0500, Paul Nickerson wrote:
> Currently, my best guess is that it's the source address
> field in the incoming TCP/IP packet's IPv4 internet header. Is this
> correct? Or, does it come from somewhere else?
grep -lr remote_addr .
in the source tree shows a handful of files where it is used, "grep -r"
shows only one or two where it is probably set.
For http, it is set in ./src/http/ngx_http_variables.c
Roughly, it is the IP address of the incoming connection, unless the
realip module has replaced it with something else.
Exactly, it is what the source code says:
v->data = r->connection->addr_text.data;
and then you can track where that addr_text.data value is set.
Francis Daly francis at daoine.org
More information about the nginx