Nessuna di queste intestazioni è ufficialmente standardizzata. Pertanto:
What is the difference between HTTP_CLIENT_IP and HTTP_X_FORWARDED_FOR?
- impossibile dirlo. Diversi proxy possono implementarli o meno. Le implementazioni possono variare da un proxy all'altro, e potrebbero non esserlo. La mancanza di una norma genera punti interrogativi.
Why would one have different values than the other?
- Vedere il punto 1. Tuttavia, da un punto di vista puramente pratico, l'unica ragione che posso vedere per questi con valori diversi è se è coinvolto più di un proxy: l'intestazione X-Forwarded-For:
potrebbe quindi contenere una traccia completa del catena di inoltro, mentre l'intestazione Client-IP:
conterrà l'effettivo IP del client. Questa è pura speculazione, comunque.
Where can I find resources on the exact definition of these headers.
- Non è possibile. Vedi punto 1.
Ci sembra di essere some kind of de-facto standard per quanto riguarda l'intestazione X-Forwarded-For:
, ma
dato che non v'è alcuna RFC che definisce questo non può essere invocata
vedi commento qui sotto.
Come nota a margine, l'intestazione Client-IP:
deve per convenzione essere X-Client-IP:
poiché è un'intestazione "definita dall'utente".
Sembra avere un RFC ora: http://tools.ietf.org/html/draft-petersson-forwarded-for-02. Anche se sembra ancora in bozza. – Kevin
RFC 7239 non è più una bozza: https://tools.ietf.org/html/rfc7239 Sembra lo standard futuro per sostituire sia 'X-Forwarded-For' che' X-Client-IP'. –
*** Utile *** _1) _ http://stackoverflow.com/questions/6914457/why-does-servervariableremote-addr-returns-the-server-ip _2) IIS7/8: registrazione del client reale IP nei registri hit di IIS_ https://blogs.iis.net/deanc/iis7-8-logging-the-real-client-ip-in-the-iis-hit-logs _3) Advanced Loging_ https : //www.iis.net/downloads/microsoft/advanced-logging _4) _ http://www.loadbalancer.org/blog/iis-and-x-forwarded-for-header _5) _ https: //www.iis.net/learn/get-started/whats-new-in-iis-85/enhanced-logging-for-iis85 – Kiquenet