![]() |
прозрачные прокси и x-forwarded-for - беда
вобщем такое дело
вставляю себе левый x-forwarded-for: 23.33.44.55 во все запросы. смотрю на на пример античате http://www.antichat.ru/cgi-bin/params.pl свой заголовок. все нормально - античат показывает мой левый x-forwarded-for: 23.33.44.55 и только. но если я иду на chat.mail.ru и смотрю свою инфу то вижу там кроме своего левого ип еще и мой реальный ип. вобщем такая хуета создает тематические проблемы. вобщем вопрос знающим людям почему? потому что античат показывает только первый x-forwarded-for: в запросе или это что то по хлеще? |
Цитата:
|
Цитата:
А он то у тебя и отображает реальный IP... |
я не забываю - я не знаю - я в компах еще слабо рублю.
но это странно - зачем тогда x-forwarded-for нужен если можно было бы выкопать ип из тсп пакетов? вобщем я был бы очень благодарен любому хорошему человеку кто бы мог мне помочь. нужен хороший человек с хттп сервером на компе и ethereal. сам я как то немогу придумать как себя проснифить ибо если я гружу страничку с себя или компа с той же подсети то запрос разумеется через прокси не проходит. но вот если бы меня кто проснифил я был бы очень рад. хочу посмотреть где там западло сидит. |
x-forwarded-for используется для того, что бы прокси сервера могли сообщить конечному серверу реальный IP клиента.
|
Цитата:
это ясно только зачем тогда x-forwarded-for нужен если как ты утверждаешь сверху этот реальный IP клиента еще есть где то в пакете? |
Если пользователь подключается к серверу через шлюз, или через прокси..., то в x-forwarded-for хранится его IP за шлюзом или за прокси, то есть это по сути и есть реальный IP клиента, правда, не всегда он является глобальным, например, если клиент подключен к VPN, adsl и тому подобное, то x-forwarded-for возвращает его локальный IP, правда не все прокси передают x-forwarded-for
|
Цитата:
|
Цитата:
Цитата:
Цитата:
Цитата:
ваш параметры хттп выбивает TCP/IP протокол REMOTE_ADDR: 94.55.122.34 REMOTE_PORT: 57501 HTTP протокол GET http://antichat.ru/cgi-bin/params.pl HTTP/1.1 Accept: application/x-shockwave-flash, */* User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; iOpus-I-M) Pragma: no-cache, bypass-client=95.94.145.231 Accept-Language: en-us Via: cacheng 1.1, 1.1 cacheng Referer: http://antichat.ru/ Connection: keep-alive Cookie: hotlog=1; b=b X-Forwarded-For: 34.55.66.55 Host: antichat.ru то есть адресс прокси REMOTE_ADDR: 94.55.122.34, левый ип X-Forwarded-For: 34.55.66.55 но майл ру выбивает еще и реальный мой ип. и выглядит все там так 34.55.66.55, 94.55.122.34, реальный ип вобщем я не знаю но мне кажется что прокси независимо от присутсвия в запросе X-Forwarded-For: добавляет всегда как положенно еще один X-Forwarded-For: а ваш скрипт просто тупит ибо это тупость заложена в самом пхп ибо пхп кажется что в заоловке может быть только один X-Forwarded-For. а майл ру 2 месяца думала пока додумала как эту тупость профиксить и докопаться до второго X-Forwarded-For. |
А это что ?
Pragma: no-cache, bypass-client=95.94.145.231 Прокся не обязана передавать адрес клиента именно в X-Forwarded-For. Она может передавать и в других параметрах (например в поле Via или bypass-client) А скрипт вообще-то не на ПХП а на перле. Хотя действительно, если несколько одноименных заголовков, то скрипт этого не отображает. Но и прокси не должны добавлять одноименные заголовки. Обычно они просто перечисляют IP через запятую в поле X-Forwarded-For (это можно увидеть здесь http://antichat.ru/proxy для прокси 203.156.136.8:3128 например ). |
| Время: 08:53 |