Меню документации

Интеграция · Протоколы

HTTP, HTTPS и SOCKS5: как именно шлюз работает с каждым протоколом.

Стандартные протоколы без специального клиента. На этой странице точно описано поведение системы для тех, кому важно знать, что происходит на сетевом уровне.

2 минуты чтения 6 разделов Обновлено

Краткая памятка#

НазначениеURL прокси в клиентеПорт
URL с http:// и https://http://USER:[email protected]:90009000
Любой протокол поверх TCP, имя хоста разрешается на выходном узлеsocks5h://USER:[email protected]:90019001
То же самое, но имя хоста разрешается вашим устройствомsocks5://USER:[email protected]:90019001
Выделенный адрес, HTTP(S)http://USER:[email protected]:80008000
Выделенный адрес, SOCKS5socks5h://USER:[email protected]:80018001

HTTP#

При обращении к обычному адресу http:// ваш клиент отправляет на порт 9000 запрос с абсолютным URI и заголовком Proxy-Authorization. Шлюз удаляет этот заголовок, передаёт запрос через выходной узел и потоком возвращает ответ. Поддерживается HTTP/1.1 с keep-alive; сохраняемое соединение остаётся на том же выходном узле (см. раздел «Ротация»).

HTTPS#

При обращении к адресу https:// клиент отправляет CONNECT host:443, а шлюз открывает прозрачный туннель от выходного узла. TLS-рукопожатие происходит через этот туннель между вашим клиентом и целевым сервером: шлюз ничего не расшифровывает, не анализирует и не подписывает заново, а проверяемый вами сертификат принадлежит самому целевому серверу. HTTP/2 и согласованные внутри туннеля резервные варианты HTTP/3 поверх TCP работают так же, как при прямом подключении.

SOCKS5#

  • RFC 1928 с аутентификацией по имени пользователя и паролю (RFC 1929) либо без аутентификации при подключении с адреса из белого списка.
  • CONNECT к любому TCP-порту, кроме 25. Команды BIND и UDP ASSOCIATE не поддерживаются: UDP и входящие соединения недоступны.
  • Передавайте имя хоста (тип адреса 0x03), чтобы его разрешал выходной узел: именно это означает socks5h:// в curl, Python и Node. Если клиент разрешает имя локально и передаёт IP, запрос также сработает, но DNS-запрос будет выполнен на вашей стороне.
  • Используйте SOCKS5 для протоколов поверх TCP, отличных от HTTP, и для клиентов, поддерживающих только SOCKS; для веб-трафика HTTP-порт равнозначен.

Заголовки#

Шлюз удаляет Proxy-Authorization и Proxy-Connection и ничего не добавляет: ни Via, ни X-Forwarded-For, ни X-Real-IP. Целевой сервер получает ваш запрос в том виде, в котором его отправил бы выходной узел, — в этом и состоит назначение сети. Самостоятельно настройте User-Agent, Accept-Language и остальные заголовки в соответствии со страной выходного узла.

Не поддерживается#

  • UDP в любом виде (при настроенном прокси QUIC во всех браузерах переключается на TCP).
  • Целевые адреса IPv6: выходные узлы используют IPv4.
  • TLS-соединение с самим портом прокси (https:// в качестве схемы прокси). Соединение до шлюза не шифруется; см. раздел «Точки подключения».
  • FTP, SMTP на порту 25 и протоколы, требующие от прокси обратного подключения к вам.

Можно начинать

Вставьте адрес конечной точки и наблюдайте, как меняется выходной IP.

Создайте аккаунт, пополните баланс на $20 и выполните краткое руководство для реального целевого ресурса. Неиспользованные средства останутся на вашем балансе.