Існують різні типи проксі - HTTP/HTTPS, Socks4 і Socks5. Такі проксі вирішують аналогічні завдання, але є й відмінності. Вони відрізняються способом передачі даних, використовуваними протоколами, ступенем анонімності та іншими характеристиками. Розглянемо більш детально кожен і порівняємо їх один з одним.
Обидва протоколи проксі використовують для схожих сценаріїв. Тому їх завдання перетинаються, іноді немає різниці, який проксі використовувати, наприклад, для збору великих обсягів даних. Але є ряд випадків, де є різниця між HTTP і Socks проксі, і один з них буде ефективніше.
З чим допоможуть HTTP-проксі:
У яких випадках підійде HTTPS проксі-сервер:
Сценарії, де буде скоріше ефективний проксі-сервер Socks:
HTTP/S-проксі використовують звичні методи обробки та передачі даних - тунелювання та кешування. Анонімність при їх використанні буде залежати від конкретного типу використовуваних проксі. Socks-проксі забезпечують анонімність за замовчуванням. Вони обробляють весь трафік без відправки користувачу і не передають дані в зовнішні мережі, тому виявити IP-адресу неможливо. HTTP/S-проксі працюють з веб-трафіком, а Socks більш універсальні і сумісні з різними протоколами.
Для "простих" завдань, наприклад, підвищення швидкості завантаження сторінок або обходу блокувань, краще використовувати HTTP/S. Якщо потрібна анонімність або знадобився парсинг для SMM, SEO та інших завдань, то краще віддати перевагу проксі-серверу Socks.
HTTP-проксі допомагають організувати роботу браузерів та програм з використанням протоколу TCP (порти 80, 8080, 3128). Вони дозволяють збирати дані для парсингу, перевіряти рекламу, вести моніторинг сайтів, досліджувати ринок. HTTPS-проксі також можуть бути корисними при передачі конфіденційної інформації, анонімному перегляді, банківських операціях, управлінні обліковими записами в соціальних мережах.
У попередній статті про HTTP-проксі в нашому блозі ми детальніше розповіли про них.
SOCKS-прокси - це прокси для передачі даних за протоколом Socket Secure. Прокси не вносить змін у процесі, трафік йде у чистому вигляді, без шифрування. Сайти не фіксують реальну IP-адресу і те, що клієнт користується проксі. При цьому Socks-проксі відмінно підходять для програм без прямого використання проксі (порти 1080 і 1081) і тоді, коли потрібне швидке і стабільне з'єднання.
Детальніше всі тонкощі ми розкрили в статті про SOCKS-проксі.
HTTP-проксі працюють інакше, на відміну від SOCKS5, які просто пропускають будь-який трафік. HTTP по-прежнему посередники, але інтерпретують відправлений трафік через сервер. Тут велику роль відіграють HTTP-заголовки - це текстові відомості про параметри вашої сесії. Заголовки допомагають серверу повідомляти браузеру про налаштування для цієї адреси і сайту. Причому як для поточної сесії, так і для наступних.
Ці заголовки допомагають з захистом інформації, кешуванням і іншими завданнями. Тому деякі дані можуть кешуватися і доставлятися швидше, але недолік в тому, що вони можуть обробляти тільки HTTP-трафік.
SOCKS5 підтримує всі типи протоколів і даних, а проксі-сервер HTTP підтримує тільки HTTP. Є ще різниця: SOCKS5 допускає роботу без аутентифікації, а проксі-сервер HTTP вимагає її.
Проксі-сервери SOCKS5, на відміну від HTTP, підійдуть для роботи поза браузером. Проксі працює на рівні сеансу, 5 рівні моделі OSI. Це між рівнем представлення (SSL) і транспортним рівнем (TCP і UDP).
Рівні хоста в моделі OSI
Рівень | Тип даних | Функції | Приклади |
---|---|---|---|
7. Прикладний | Дані | Доступ до мережевих служб | HTTP, FTP, POP3, SMTP, WebSocket |
6. Представлення | Дані | Представлення та шифрування даних | ASCII, EBCDIC, JPEG, MIDI |
5. Сеансовий | Дані | Управління сеансом зв'язку | SOCKS5, RPC, PAP, L2TP, gRPC |
4. Транспортний | Сегменти та датаграми | Пряма зв'язок між кінцевими пунктами та надійність | TCP, UDP, SCTP, Порти |
3. Мережевий | Пакети | Визначення маршруту та логічна адресація | IPv4, IPv6, IPsec, AppleTalk, ICMP |
2. Канальний | Біти та кадри | Фізична адресація | PPP, IEEE 802.22, Ethernet, DSL, ARP, мережева карта |
1. Фізичний | Біти | Робота з середовищем передачі, сигналами та двійковими даними | USB, RJ («вита пара», коаксіальний, оптоволоконний), радіоканал |
Які проксі краще — HTTP або SOCKS? І ті, і інші проксі можуть приховати ваш реальний IP-адресу. Основні відмінності між проксі в таблиці:
| HTTP/S | Socks |
---|---|---|
Передача заголовків | Залежить від типу проксі. Деякі передають дані про реальну IP-адресу користувача, інші - про використання проксі | Сервер не передає і не змінює жодних даних |
З яким трафіком працює | З браузера | З браузера і програм |
Конфігурація | Працюють з портами 80 і 443 | Працюють з будь-якими портами |
Анонімність | Залежить від типу проксі. Деякі не приховують реальну IP-адресу, інші приховують IP, але повідомляють про використання проксі, треті приховують і те, і інше. Такі проксі можуть виявляти і блокувати підозрілі пакети даних або шпигунське ПЗ. | Повністю анонімні |
Шифрування | Є тільки у HTTPS, використовує SSL-шифрування | За замовчуванням немає тунельного шифрування |
Швидкість роботи | Залежить від типу проксі | Так само залежить від типу, але вище HTTP |
Підтримка протоколів | Тільки HTTP/S | Вміють обробляти HTTP, HTTPS, POP3, SMPT, FTP та інші запити |
HTTP/HTTPS-проксі:
SOCKS-проксі:
В цілому, функціональність обох типів проксі однакова. Виділимо деякі особливості: