Via, X-Forwarded-For и Forwarded: полный разбор заголовков прокси
Представьте: вы настроили один и тот же прокси-сервер, зашли через него на два разных сайта. Первый радостно сообщает: ваш реальный IP такой-то, вы используете прокси. Второй не замечает ничего подозрительного и считает вас обычным посетителем. Один прокси, одна конфигурация, но два совершенно разных результата. Почему так происходит? Ответ почти всегда лежит в плоскости HTTP-заголовков.
Заголовки - это служебная информация, которую браузеры, прокси и серверы обменивают друг с другом при каждом запросе. Большинство из них невидимы для обычного пользователя, но именно они формируют то, что целевой сервер знает о вас и о цепочке узлов, через которую пришёл запрос. Три заголовка играют в этой истории главные роли: Via, X-Forwarded-For и современный Forwarded, описанный в RFC 7239.
В этом руководстве мы разберём тему от фундамента до тонкостей. Вы узнаете, откуда вообще берётся заголовок Via, чем hop-by-hop заголовки отличаются от end-to-end, почему X-Forwarded-For нельзя слепо доверять и как правильно настроить доверие к нему на стороне сервера. Мы честно расшифруем маркетинговые термины прозрачный, анонимный и элитный прокси - в терминах конкретных заголовков, а не рекламных обещаний. И, что самое важное, вы получите готовые инструменты, чтобы своими руками проверить, какой набор заголовков реально уходит наружу.
Сразу обозначим границы. Мы говорим исключительно про HTTP-заголовки. Мы не касаемся фингерпринтинга, TLS-отпечатков и методов детектирования автоматизации - это отдельные обширные темы. Здесь только заголовки: что их ставит, что они раскрывают и как этим управлять.