GoDoxy
Advanced TopicsMiddlewaresIP Resolution

Real IP

Resolve client IP from proxy headers

Recommended for entrypoint - affects $remote_addr, $remote_host, logs, and CIDRWhitelist.

OptionDescriptionDefaultRequired
headerReal IP headerX-Real-IPNo
fromTrusted CIDRs/IPs-Yes
recursiveRecursive modetrueNo

Recursive Mode

  • true: First IP not in from list
  • false: Last IP not in from list

Expected Behavior

from: 192.168.0.0/16, 10.0.0.1
header: X-Forwarded-For
X-Forwarded-For: 1.2.3.4, 192.168.0.123, 10.0.0.123
RecursiveResult
true1.2.3.4
false10.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]

On this page