В чем разница между IP-адресом HTTP-клиента и перенаправленным HTTP X?
Я понимаю, что заголовок HTTP_X_FORWARDED_FOR устанавливается прокси-серверами для идентификации ip-адреса хоста, который делает HTTP-запрос через прокси. Я слышал утверждения, что заголовок HTTP_CLIENT_IP устанавливается для аналогичных целей.
- в чем разница между
HTTP_CLIENT_IPиHTTP_X_FORWARDED_FOR? - почему один имеет другие значения, чем другой?
- где я могу найти ресурсы по точному определению этих заголовков.
1 ответ:
ни один из этих заголовков официально стандартизированы. Таким образом:
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:поскольку это пользовательский заголовок.