Пакет переименовывает скрипт-резолвер upstream'а proxyresolv в proxyresolv4 (spec: install -Dm755 src/proxyresolv %buildroot%_bindir/proxyresolv4), но бинарь libproxychains4.so зовёт его по оригинальному имени, жёстко зашитому в исходнике: src/core.c:814: execlp("proxyresolv","proxyresolv",name,NULL); Символьной ссылки proxyresolv -> proxyresolv4 пакет не ставит, поэтому в режиме `proxy_dns_old` (proxychains 3.1 style) любой DNS-запрос падает. Как воспроизвести ----------------- 1. В /etc/proxychains.conf выставить режим: proxy_dns_old (вместо proxy_dns), задать рабочий [ProxyList]. 2. Запустить любую программу через proxychains4, требующую резолва имени: proxychains4 curl https://api.anthropic.com Фактический результат --------------------- |DNS-request| api.anthropic.com can't exec proxyresolv: No such file or directory |DNS-response|: api.anthropic.com lookup error Резолв не проходит, соединение не устанавливается. Ожидаемый результат ------------------- proxy_dns_old резолвит имя через прокси, как задокументировано. Дополнительно ------------- Комментарий в /etc/proxychains.conf (строки 62-63) сам ссылается на старое имя: # method 2. use the old proxyresolv script to proxy DNS requests # in proxychains 3.1 style. requires `proxyresolv` in $PATH То есть штатная конфигурация обещает `proxyresolv` в $PATH, которого пакет не предоставляет. Предлагаемое исправление ------------------------ Добавить в %install spec-файла симлинк совместимости: ln -s proxyresolv4 %buildroot%_bindir/proxyresolv и в %files: %_bindir/proxyresolv (либо не переименовывать скрипт, либо пропатчить execlp в src/core.c на proxyresolv4 — но симлинк проще и сохраняет апстрим-чистоту кода.) Обходной путь для пользователя ------------------------------ ln -s /usr/bin/proxyresolv4 ~/.local/bin/proxyresolv (требуется dig или drill в системе).