romy4
@romy4
Exception handler

Как запретить rebind файла или сделать оверлей для определённого процесса?

В предыдущем вопросе было про создание подсети для отдельного тунеля. Разобрался, работат - всё отлично. Кроме одного момента.
DNS resolving
Подсистемой dns резолвинга (dns клиентом) используется файл /etc/resolv.conf, который по умолчанию (стечению обстоятельств) является ссылкой на /run/systemd/resolve/stub-resolv.conf.
Запуск процесса в сетевом неймспейсе делает rebind ссылки на файл из /etc/netns/myns/resolv.conf
Но так как у меня запущен один тунель без неймспейса, то какими-то его правилами происходит перезагрузка resolvconf и соответственно обновляется /run/systemd/resolve/stub-resolv.conf тем самым уничтожая ребаиндинг для процесса, запущенного в моём myns пространстве имён.

решение, предложенное на стековерфлой
nsenter --net=/var/run/netns/test unshare --mount sh -c 'mount --bind /etc/netns/test/resolv.conf /etc/resolv.conf; exec bash'
по сути есть тоже самое что и
ip netns exec myns bash


Каким образом можно запретить ребаиндинг или вообще какие-то иные идеи?
По сути мне нужно что-то overlayfs, но я очень не уверен, что нужно именно это. Должен быть вариант по проще.
  • Вопрос задан
  • 45 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы