LINUX.ORG.RU

Заставить процесс использовать другие DNS


0

2

Нужно заставить определенный процесс использовать DNS отличные от тех, что в /etc/resolv.conf. Использовать chroot и прочие виатуализации - не вариант, ибо требует прав root + гемор с дублированием кучи системных файлов. Править исходники программ тоже не вариант.

В гугле нашел пару проектов, завязанных на LD_PRELOAD (по моему, идеальный вариант):

https://github.com/hadess/resolvconf-override
http://cwrap.org/resolv_wrapper.html

Но оба почему-то не работают: процессы тупо игнорируют эти либы, хотя судя по strace и LD_DEBUG они без проблем подгружаются при старте. И вообще, я заметил, что в Debian (Wheezy 7.7 armhf) проекты с LD_PRELOAD в большинстве случаев не работают - тот же nocache к примеру. Может кто сталкивался?

Ну и кроме этого, какие еще есть варианты? В голове витает мысль самому написать либу, которая перехватывает вызов open и передает дескриптор левого resolv.conf, но хотелось бы готовое решение.

★★★★★

Последнее исправление: Rost (всего исправлений: 1)

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.