Real IP
Resolve client IP from proxy headers
Recommended for entrypoint - affects $remote_addr, $remote_host, logs, and
CIDRWhitelist.
| Option | Description | Default | Required |
|---|---|---|---|
header | Real IP header | X-Real-IP | No |
from | Trusted CIDRs/IPs | - | Yes |
recursive | Recursive mode | true | No |
Recursive Mode
true: First IP not infromlistfalse: Last IP not infromlist
Expected Behavior
from: 192.168.0.0/16, 10.0.0.1
header: X-Forwarded-ForX-Forwarded-For: 1.2.3.4, 192.168.0.123, 10.0.0.123| Recursive | Result |
|---|---|
true | 1.2.3.4 |
false | 10.0.0.123 |
Examples
Entrypoint
entrypoint:
middlewares:
- use: real_ip
header: X-Real-IP
from: [127.0.0.1, 192.168.0.0/16]Docker Labels
proxy.#1.middlewares.real_ip: |
header: X-Real-IP
from: [127.0.0.1, 192.168.0.0/16]Route Files
myapp:
middlewares:
real_ip:
header: X-Real-IP
from: [127.0.0.1, 192.168.0.0/16]