il codice che hai indicato ti ritorna l'ip del client se:
*non viene usato un proxy
*viene usato un proxy trasparente

ti ritorna inceve l'ip del proxy se:
*il proxy è anonimo [però puoi sapere che usa un proxy testando HTTP_VIA]
*il proxy è high anonimity [non puoi sapere se usa un proxy perchè HTTP_VIA è vuoto]