Типы прокси путают чаще всего на входе, и из-за этого потом ловят странные ошибки. Короткий ответ такой: HTTP-прокси понимает содержимое запроса и работает только с веб-трафиком, SOCKS5 работает на уровень ниже и просто перекладывает пакеты, не разбирая, что внутри.
Дальше по порядку: чем это оборачивается на практике, как устроена авторизация, почему один и тот же адрес в одном софте работает, а в другом отказывается, и чем приватный адрес отличается от общего.
HTTP-прокси: понимает запрос
HTTP-прокси разбирает заголовки запроса. Он видит адрес назначения, метод, куки, User-Agent. Из этого следует и плюс, и минус. Плюс в том, что такой прокси умеет кешировать и фильтровать. Минус в том, что он может добавить в запрос свои заголовки, и принимающая сторона это увидит.
Для HTTPS схема другая: браузер отправляет метод CONNECT, прокси открывает туннель и дальше только перекладывает шифрованные байты. Содержимое ему уже недоступно, он знает лишь адрес и порт. Именно поэтому HTTP-прокси спокойно работает с защищёнными сайтами, хотя название говорит об обратном.
Практический вывод: под браузерные задачи HTTP-прокси подходит полностью. Под всё, что ходит не по HTTP, он не годится вообще, и выясняется это обычно в тот момент, когда софт молча отказывается подключаться.
SOCKS5: не разбирает содержимое
SOCKS5 работает на транспортном уровне. Ему всё равно, что вы гоните через соединение: веб, почту, свой протокол поверх TCP. Он не добавляет заголовков, потому что не знает про них.
Отсюда и репутация SOCKS5 как более универсального варианта. Он же чаще указан в требованиях софта, который работает не через браузер: почтовые клиенты, мессенджеры, парсеры, самописные скрипты.
Ещё одно отличие: SOCKS5 умеет UDP, тогда как HTTP-прокси только TCP. Для большинства задач это не важно, но если софт просит UDP, вариант остаётся один. Проверить просто: если в настройках программы поле называется «SOCKS host», значит HTTP там не примут.
| Что сравниваем | HTTP | SOCKS5 |
|---|---|---|
| Уровень работы | прикладной | транспортный |
| Видит содержимое | да, кроме HTTPS | нет |
| Добавляет заголовки | может | нет |
| Поддержка UDP | нет | есть |
| Работает с не-веб софтом | нет | да |
| Типичный порт | 8080, 3128 | 1080 |
Три вида HTTP-прокси по анонимности
HTTP-прокси делятся по тому, что они рассказывают о вас принимающей стороне. Прозрачный передаёт ваш настоящий адрес в заголовке и не скрывает ничего. Анонимный ваш адрес не передаёт, но сообщает, что запрос идёт через прокси. Элитный не сообщает ни того ни другого, и со стороны запрос выглядит как обычный.
Разница видна в заголовках X-Forwarded-For и Via. Первый несёт исходный адрес, второй сообщает о посреднике. Если в запросе нет ни одного из них, прокси относится к третьей группе.
Проверяется это за минуту: откройте через прокси любой сервис, показывающий заголовки запроса, и посмотрите на список. Под рабочие задачи имеет смысл только третий вариант, остальные два раскрывают вас на первом же шаге.
Авторизация: по логину и по адресу
Доступ к приватному прокси закрывают одним из двух способов. Первый: логин и пароль, они передаются при подключении. Второй: привязка к вашему IP, тогда сервер пускает без пароля, но только с разрешённого адреса.
Привязка по адресу удобна ровно до того момента, пока ваш собственный IP не сменился. После смены доступ отваливается молча, и выглядит — это как «прокси умер». Первое, что стоит проверить в такой ситуации, это список разрешённых адресов в панели, а уже потом всё остальное. Подробный порядок разобран отдельно: что проверять когда прокси перестал отвечать.
Логин и пароль в этом смысле надёжнее: они не зависят от того, откуда вы подключаетесь. Взамен их надо где-то хранить, и в командной работе — это отдельная забота. Практика такая: пока человек один, удобнее привязка по адресу, как только людей становится двое, удобнее пароль.
Какой протокол просит софт
Антидетект-браузеры принимают оба протокола. В Dolphin Anty при создании профиля тип подключения выбирается из списка, куда входят HTTP, SOCKS4 и SOCKS5, а поля заполняются одинаково: адрес, порт, логин, пароль. Проверка соединения там же, отдельной кнопкой. Что именно подменяет сам браузер, разобрано в теме про подмену параметров устройства.
Скрипты на Python и Node обычно работают с обоими вариантами, но библиотека может требовать отдельный пакет для SOCKS. Если запрос уходит напрямую, минуя прокси, чаще всего дело именно в этом: нужный пакет не установлен, и библиотека тихо игнорирует настройку.
Сколько адресов держать на профиль, разобрано в соседней теме: сколько адресов держать на один кабинет. Там же про то, почему адрес не делят между профилями.
Приватный адрес и общий
Помимо протокола есть второе деление, и оно важнее: принадлежит адрес вам одному или используется несколькими людьми сразу.
Общий адрес дешевле, и на этом его достоинства заканчиваются. Вы не знаете, что через него делали до вас. Репутация такого адреса складывается из чужих действий, и повлиять на неё вы не можете. Когда сайт вдруг перестаёт пускать, разбираться будет негде.
Приватный адрес закреплён за вами, и его история — это ваша история. Под задачи, где важна чистота адреса, берут приватные IPv4 и SOCKS5 из своего пула, потому что там адрес не гуляет по чужим рукам. Отдельный плюс: доступ выдаётся сразу в обоих протоколах, и переделывать настройку при смене софта не придётся.
Как проверить, что всё настроено верно
Проверка состоит из трёх шагов и занимает пять минут. Первое: запросите свой внешний адрес тем же инструментом, который настраивали. Браузер показывает не всё, расширение может отвалиться незаметно.
Второе: посмотрите заголовки запроса и убедитесь, что там нет вашего настоящего адреса. Третье: если работаете через антидетект, проверьте утечку через WebRTC, она обходит прокси и сводит настройку к нулю. Что ещё входит в отпечаток, разобрано здесь: из чего складывается отпечаток браузера.
Отдельно проверьте скорость. Приватный адрес обычно отвечает ровно, и если задержка скачет от 80 до 900 миллисекунд, дело либо в канале, либо в том, что адрес не такой приватный, как обещали. Ровный отклик даёт безлимитный доступ без ограничения по трафику, потому что там нет соседей, которые забирают полосу.
Итог короткий: HTTP разбирает запрос, SOCKS5 не разбирает. Под браузер годится любой, под остальное только SOCKS5. Авторизацию выбирайте по тому, меняется ли ваш собственный адрес, а тип доступа по тому, насколько вам важна чистота адреса.