Нужно заставить определенный процесс использовать 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, но хотелось бы готовое решение.