Thanks. I always looked forward to something like this. A nice guide. +1
The IPFuck plugin is great. As
its info page hints, three http headers supply host identity information(including ip address). Which are VIA, X-Forwarded-For and Client-IP
There are some more or maybe just aliases of them as I found on the web, but they seem to serve similar purposes.
HTTP_CLIENT_IP
HTTP_X_FORWARDED_FOR
HTTP_X_FORWARDED
HTTP_X_CLUSTER_CLIENT_IP
HTTP_FORWARDED_FOR
HTTP_FORWARDED
I found the specs of VIA here :
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html (14.45)
and a draft RFC of X-Forwarded-for here :
http://tools.ietf.org/html/draft-petersson-forwarded-for-02Couldn't find a RFC for client-ip though but a google search reveals some cisco and other manufacturers' documentation on how to modify that header.
So, after a bit of research, my conclusion is X-Forwarded headers are troublesome for anonymity if they are maintained properly throughout the route. Usually, using IPfuck with a medium anonymous proxy (public proxies with high anon are often very slow) should be able to hide the actual client address.
Here, I found some websites that check how much info can be gathered from your browser requests.
Funny thing is, when you use ipfuck with no proxy, whatsmyip.com checks the headers(which is spoofed) for your actual ip and the takes the content of the REMOTE_ADDR header (which has your original address) as the proxy server's ip. Try it.