В бесплатных списках прокси до сих пор встречается много адресов SOCKS4. То, что протокол появился в начале 1990-х, не делает его бесполезным, — но три нововведения SOCKS5 в большинстве современных задач оказываются решающими: аутентификация, UDP и удалённый DNS.
ATYP поле может напрямую переносить доменное имя, поэтому разрешение DNS выполняет прокси. В SOCKS4 такого поля нет; адрес приходится разрешать вам самим.
Сравнение версий
SOCKS4a — расширение SOCKS4, способное переносить доменное имя; в остальном оно идентично SOCKS4.
Почему важен удалённый DNS?
При использовании SOCKS4 доменное имя назначения разрешает ваш собственный компьютер . То есть DNS-запрос для ornek.com уходит к вашему ISP и попадает в его логи. Прокси подключается только к уже разрешённому IP. Итог: ваш IP скрыт, но то, на какой сайт вы заходите не скрыто.
Свою ситуацию вы можете тестом на утечку DNS измерить. Если вы используете SOCKS5, убедитесь, что в клиенте включена опция «удалённый DNS».
Когда нужна поддержка UDP?
Поскольку веб-сёрфинг полностью работает поверх TCP, отсутствие UDP незаметно. Разница проявляется в других задачах: голосовая/видеосвязь (Discord), онлайн-игры, прямое туннелирование DNS и torrent DHT. Для этих задач SOCKS4 не подходит.
Что делать на практике?
- При выборе адреса из списка отдавайте предпочтение помеченным как SOCKS5 .
- Если у вас есть только адрес SOCKS4, проверьте хотя бы наличие поддержки SOCKS4a .
- Если у вас корпоративный адрес, требующий имени пользователя и пароля, это уже SOCKS5; SOCKS4 не передаёт данные аутентификации.
- Если ваш клиент предлагает опцию «SOCKS5h», выбирайте её — конечная hозначает, что разрешение имени хоста будет выполняться удалённо.
Какую версию «говорит» имеющийся у вас адрес, наш инструмент проверки прокси определяет автоматически: в поле протокола вы увидите SOCKS5 или SOCKS4.