From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=ham autolearn_force=no version=3.4.1 To: sisyphus@lists.altlinux.org References: <770908e7-9c0e-1c60-8acb-74d6b200437a@complife.ru> <20190409001550.GD16603@altlinux.org> <201904091647.23059.a_s_y@sama.ru> From: "Michael A. Kangin" Message-ID: <92593e51-3faf-bbc1-fa1d-3a0a77f07c4e@complife.ru> Date: Wed, 10 Apr 2019 16:50:55 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 In-Reply-To: <201904091647.23059.a_s_y@sama.ru> Content-Type: text/plain; charset=koi8-r; format=flowed Content-Language: ru-RU Content-Transfer-Encoding: 8bit Subject: Re: [sisyphus] =?utf-8?b?0YDQtdC30L7Qu9Cy0LXRgA==?= X-BeenThere: sisyphus@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Sisyphus discussions List-Id: ALT Linux Sisyphus discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Apr 2019 14:50:58 -0000 Archived-At: List-Archive: List-Post: On 04/09/2019 02:47 PM, Sergey wrote: > Я так понимаю, что вопрос из-за того, что какой-то resolv.conf > лежит в /var/resolv/etc/, а изменения в /etc/resolv.conf не > во всех случаях становятся актуальными без запуска update_chrooted > (или изменения /var/resolv/etc/resolv.conf другим способом каким- > нибудь). Хотя вопрос, каков сейчас список приложений, которые > используют /var/resolv/ тем или иным образом. "каков сейчас список приложений" - а это разве не на общесистемном уровне применяется? По крайней мере, ping работает с файлами именно из /var/resolv/etc/ У меня такая проблема - на хосте работает свой резолвер, он прописан в /etc/net/ifaces/{iface}/resolv.conf как 127.0.0.1. При старте системы всё это прописывается в /etc/resolv.conf, /var/resolv/etc/resolv.conf, всё хорошо и благостно. Теперь создаём netns, у которого свой собственный lo со своим собственным 127.0.0.1, и обнаруживаем, что резолвинг в этом неймспейсе не работает. Ок, в man ip-netns сказано: =================== For applications that are aware of network namespaces, the convention is to look for global network configuration files first in /etc/netns/NAME/ then in /etc/. For example, if you want a different version of /etc/resolv.conf for a network namespace used to isolate your vpn you would name it /etc/netns/myvpn/resolv.conf. ip netns exec automates handling of this configuration, file convention for network namespace unaware applications, by creating a mount namespace and bind mounting all of the per network namespace configure files into their traditional location in /etc. ================== Делаем директорию /etc/netns/myns, кладём туда исправленный экземпляр resolv.conf Заходим снова в неймспейс, смотрим, что изнутри него /etc/resolv.conf виден как исправленно-правильный, однако резолвинг по-прежнему не работает, потому что /var/resolv/etc/resolv.conf остался старый, немодифицированный. Если теперь изнутри неймспейса сказать update_chrooted, то резолвинг чинится для неймспейса, но тут же (ожидаемо) ломается для остальной хост-системы. В общем, для меня тот факт, что resolv.conf и hosts используются из чрута /var/resolv/, создаёт дикое количество затруднений и проблем, и я был бы очень рад, если бы нашёлся путь использовать версии файлов непосредственно из /etc (как это в RHEL например работает).