HTTP і SOCKS5 — два протоколи проксі, які трапляються найчастіше. Обидва приховують вашу IP-адресу, обидва безкоштовні в нашому списку, і обидва працюють у більшості програм. Але вони діють на різних рівнях, і вибір стає важливим, щойно ви виходите за межі звичайного перегляду сайтів.
Як працює HTTP проксі
HTTP проксі розмовляє мовою вебу. Ваш клієнт надсилає йому звичайний HTTP-запит із повною URL-адресою, проксі читає його, сам виконує запит і повертає відповідь. Для HTTPS-сайтів клієнт надсилає команду CONNECT example.com:443, і проксі відкриває тунель, яким зашифрований трафік проходить без змін.
Оскільки HTTP проксі розуміє запити, він може їх і змінювати: додавати заголовки на кшталт Via або X-Forwarded-For, кешувати сторінки чи фільтрувати вміст. Тому HTTP проксі мають різні рівні анонімності.
Як працює SOCKS5 проксі
SOCKS5 працює на рівень нижче. Клієнт повідомляє проксі, до якого хоста й порту підключитися, проксі відкриває TCP-з’єднання і далі просто передає байти. Він не знає і не переймається, що це за байти — вебсторінка, електронний лист чи ігрова сесія. SOCKS5 також уміє передавати UDP і підтримує автентифікацію за іменем користувача та паролем.
Порівняння
| HTTP | SOCKS5 | |
|---|---|---|
| Трафік | Веб (HTTP/HTTPS) | Будь-який TCP, за потреби UDP |
| Може змінювати запити | Так | Ні |
| Додає заголовки, що його видають | Іноді | Ніколи |
| Визначення імен (DNS) | На проксі | На проксі або на клієнті |
| Підтримка в браузерах | Усюди | Firefox, Chrome через прапорець, більшість інструментів |
| Типове застосування | Перегляд сайтів, парсинг | Програми, месенджери, боти, ігри |
Швидкість
Суттєвої різниці у швидкості, через яку варто перейматися, немає. Рукостискання SOCKS5 трохи коротше, натомість HTTP проксі може кешувати вміст. На практиці швидкість безкоштовного проксі залежить від його розташування та навантаження, тому сортуйте список проксі за затримкою, а не за протоколом.
Безпека та анонімність
Жоден із протоколів сам по собі не шифрує трафік. Відкривайте HTTPS-сайти — і вміст залишатиметься зашифрованим незалежно від типу проксі.
У SOCKS5 є практична перевага в анонімності: він ніколи не додає заголовків, тож робочий SOCKS5 проксі фактично є елітним. З HTTP проксі треба дивитися на стовпець анонімності — прозорі проксі передають сайту ваш справжній IP.
Єдине застереження щодо SOCKS5 — DNS. Якщо клієнт сам перетворює імена хостів на IP, ваш DNS-провайдер бачить кожен сайт, який ви відвідуєте. Використовуйте socks5h:// у curl і Python або ввімкніть у Firefox параметр «Проксі DNS при використанні SOCKS v5», щоб імена визначалися через проксі.
Що обрати
- Браузер або простий парсер — найпростіше з HTTP. Беріть елітний чи анонімний проксі зі списку HTTP проксі.
- Telegram, поштові клієнти, десктопні програми — SOCKS5.
- Скрипти, що відкривають «сирі» TCP-з’єднання — SOCKS5.
- Ігри, VoIP, будь-що на UDP — SOCKS5 з підтримкою UDP (серед безкоштовних проксі трапляється рідко).
- Програма підтримує лише один із протоколів — той, який вона підтримує.
Короткі приклади
curl -x http://IP:PORT https://example.com
curl --socks5-hostname IP:PORT https://example.com
Свіжі адреси шукайте в списку SOCKS5 проксі та списку HTTP проксі — обидва перевіряються щохвилини.