Вопрос или проблема
У меня настроен proxychains следующим образом:
strict_chain
proxy_dns
http 172.16.20.2 3128
поскольку я могу получить доступ к интернету через 172.16.20.2:3128
. Но при запуске proxychains возникает следующая ошибка:
root@kali:~# proxychains apt-get update
ProxyChains-3.1 (http://proxychains.sf.net)
0% [Работаю]|DNS-запрос| http.kali.org
0% [Подключение к http.kali.org]|S-цепочка|-<>-172.16.20.2:3128-<><>-4.2.2.2:53-<--отказано
|DNS-ответ|: http.kali.org не существует
Игнор:1 http://http.kali.org/kali kali-rolling InRelease
0% [Работаю]^C
Так в чем же проблема? Я подозреваю, что с моим proxychains ничего не так, потому что он работает через tor, но не через 172.16.20.2:3128
. 172.16.20.2:3128
нормально работает в моем браузере, так что что мешает ему работать через proxychains?
Я абсолютно уверен, что вам нужно закомментировать “strict_chain”, а затем убрать комментарий с “dynamic_chain”.
Вот так..
# proxychains.conf VER 4
# HTTP, SOCKS4, SOCKS5 туннельный прокси с DNS.
# Опция ниже определяет, как обрабатывается ProxyList.
# только одна опция должна быть раскомментирована в данный момент,
# иначе будет принята последняя появившаяся опция
dynamic_chain
#Динамическая - Каждый соединение будет осуществляться через цепочки прокси
# все прокси связаны в порядке их появления в списке
# как минимум один прокси должен быть онлайн, чтобы участвовать в цепочке
# (мертвые прокси пропускаются)
# иначе будет возвращен EINTR приложению
#strict_chain
# Строгая - Каждое соединение будет осуществляться через цепочки прокси
# все прокси связаны в порядке их появления в списке
# все прокси должны быть онлайн, чтобы участвовать в цепочке
# иначе будет возвращен EINTR приложению
Ответ или решение
Данный вопрос касается проблемы с разрешением IP-адреса при использовании ProxyChains с набором прокси-серверов. В вашем случае вы используете конфигурацию, которая предполагает строгую цепочку соединений, что может приводить к ошибкам, если один из прокси-серверов недоступен.
Причины проблемы
-
Настройка
strict_chain
:- При использовании режима
strict_chain
ProxyChains требует, чтобы все прокси-серверы в цепочке были доступны. Если один из них не отвечает, это приводит к ошибке и, как следствие, к невозможности разрешить IP-адреса. - В вашем случае, если прокси-сервер
172.16.20.2:3128
не работает должным образом или если он не обрабатывает DNS-запросы, все соединения будут заблокированы, что и происходит в вашей ситуации.
- При использовании режима
-
Отсутствие поддержки DNS-прокси:
- Возможно, ваш прокси-сервер
172.16.20.2:3128
не поддерживает DNS-запросы через HTTP. Если он не настроен на пересылку DNS-запросов, то вызовproxy_dns
не будет иметь эффекта, а ProxyChains не сможет разрешить нужные адреса.
- Возможно, ваш прокси-сервер
-
Конфликт с другими настройками:
- Если прокси-сервер имеет особые настройки или ограничения (например, фильтрацию по IP-адресам или доменным именам), это также может приводить к проблемам с разрешением IP-адресов.
Рекомендации по решению проблемы
-
Изменение конфигурации:
- Как вы уже заметили, измените настройки на использование
dynamic_chain
, что позволит вам обойти возможные проблемы с недоступностью прокси-серверов. В этом режиме соединение можно установить через доступные прокси, что добавляет гибкости.
Пример конфигурации:
dynamic_chain proxy_dns http 172.16.20.2 3128
- Как вы уже заметили, измените настройки на использование
-
Тестирование прокси на доступность:
- Проверьте, доступен ли прокси-сервер с помощью утилиты
telnet
илиcurl
. Например, используйте командуtelnet 172.16.20.2 3128
. Это поможет убедиться в том, что прокси активно отвечает на запросы.
- Проверьте, доступен ли прокси-сервер с помощью утилиты
-
Использование альтернативных DNS:
- Если ваш прокси-сервер не поддерживает DNS-запросы, вы можете попробовать настроить локальный DNS-сервер, чтобы обрабатывать эти запросы, или использовать публичные DNS-серверы (например, Google DNS 8.8.8.8).
-
Проверка логов прокси-сервера:
- Изучите логи прокси-сервера для получения информации о том, почему соединение может быть отказано. Это может предоставить полезные подсказки для решения проблемы.
Заключение
Ошибки, связанные с разрешением IP-адреса при использовании ProxyChains, могут быть вызваны многими факторами, начиная от конфигурации строки прокси и заканчивая поддержкой прокси-сервером ошибок обработки DNS. Важно изменить настройки на dynamic_chain
, протестировать доступность прокси и, если необходимо, использовать альтернативные DNS-службы для обеспечения большей надежности подключения. Следуя предоставленным рекомендациям, вы сможете устранить текущие проблемы и комфортно использовать ProxyChains для работы в сети.