В чем разница между HTTP_CLIENT_IP и HTTP_X_FORWARDED_FOR?
Я понимаю, что заголовок HTTP_X_FORWARDED_FOR
устанавливается прокси-серверами для идентификации ip-адреса хоста, который делает HTTP-запрос через прокси-сервер. Я слышал утверждения, что заголовок HTTP_CLIENT_IP
установлен для аналогичных целей.
- В чем разница между
HTTP_CLIENT_IP
иHTTP_X_FORWARDED_FOR
? - Почему у кого-то разные значения, чем у другого?
- Где я могу найти ресурсы на точное определение этих заголовков.
- Позвоните в официальное приложение * Настройки * из моего приложения на iPhone.
- Получить реальный IP-адрес клиента на Heroku
- Как я могу иметь строчные маршруты в ASP.NET MVC?
- Какова разница в поведении между обратным путем, ответом и от?
- URL-адрес хеша сохраняется между переадресацией
- Как я могу программно получить MAC-адрес iphone
- Перенаправление URL-адреса IIS7 из корневого каталога в подкаталог
- Как проверить правильность URL-адреса в Android
- Как международные географические адреса должны храниться в реляционной базе данных?
- Какова максимальная длина действительного адреса электронной почты?
Ни один из этих заголовков официально не стандартизирован. Следовательно:
-
What is the difference between HTTP_CLIENT_IP and HTTP_X_FORWARDED_FOR?
– нельзя сказать. Различные прокси-серверы могут реализовать эти или не могут. Реализации могут отличаться от одного прокси-сервера к другому, и они могут и не быть. Отсутствие стандартного порождает вопросительные знаки. -
Why would one have different values than the other?
– См. Пункт 1. Однако с чисто практической точки зрения единственная причина, по которой я могу видеть, что они имеют разные значения, – это использование более одного прокси-сервера – заголовокX-Forwarded-For:
может содержать полный трек цепь пересылки, тогда как заголовокClient-IP:
будет содержать фактический IP-адрес клиента. Однако это чистое предположение. -
Where can I find resources on the exact definition of these headers.
-Ты не можешь. См. Пункт 1.
Кажется, что существует какой-то де-факто стандарт относительно заголовка X-Forwarded-For:
но при условии, что не существует RFC, который его определяет, на это нельзя полагаться, см. Комментарий ниже.
В качестве побочного примечания, заголовок Client-IP:
по соглашению должен быть X-Client-IP:
поскольку он является «определяемым пользователем» заголовком.