В чем разница между 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:
поскольку это пользовательский заголовок.