[sisyphus] У NetworkManager проблемы с DNS после выхода из ждущего режима

Mikhail Efremov sem на altlinux.org
Пн Окт 5 13:41:40 MSK 2020


On Sun, 4 Oct 2020 14:56:42 +0700 Антон Мидюков wrote:
> 29.09.2020 00:36, Mikhail Efremov пишет:
> > On Sat, 26 Sep 2020 19:13:56 +0700 Антон Мидюков wrote:  
> >> Доброго времени суток
> >>
> >> Около двух недель назад началась проблема. Выходит ноутбук из
> >> ждущего режима, подключается к wi-fi через NetworkManager, и
> >> обращение по DNS именам не работает.
> >>
> >> Помогает перезапуск NetworkManager, иногда не с первого раза.
> >>
> >> В статусе работы NetworkManager:
> >>
> >> dns-mgr: resolvconf failed with status 256
> >>
> >> dns-mgr: could not commit DNS changes: resolvconf failed with
> >> status 256
> >>
> >> У кого-нибудь ещё воспроизводится эта проблема?  
> > Я такого не видел. А если в этой ситуации руками запустить
> > resolvconf -u?  
> 
> Не помогало. Проблему решил удалением systemd-networkd. Вероятно, 
> помогло бы и просто отключение systemd-resolved.service.

Хм, при использовании systemd-resolved NM должен его использовать
автоматически:
If the key is unspecified, default is used, unless /etc/resolv.conf is a symlink to /run/systemd/resolve/stub-resolv.conf,
/run/systemd/resolve/resolv.conf, /lib/systemd/resolv.conf or /usr/lib/systemd/resolv.conf. In that case, systemd-resolved is chosen
automatically.

Ну или можно явно прописать systemd-resolved в NetworkManager.conf (см.
NetworkManager.conf(5)).
Впрочем, я это не проверял, посмотрю потом на виртуалке.

> Также должен признать, что перезапуск NetworkManager был не нужен, 
> достаточно было просто отключить соединение и заново включить.
> 
> Также вспомнил, что началась проблема приблизительно после того, как
> я сделал apt-get autoremove. У меня вообще dns не работал, пока я не 
> включил dnsmasq.service. Сейчас он отключен и всё работает.

Странно, не знаю что тут могло ломаться. С dnsmasq.service все просто:
при запуске в /etc/resolv.conf должен быть прописан локальный резолвер
и resolvconf будет генерить для него конфиг. При остановке - resolvconf
напрямую пишет в /etc/resolv.conf. Это все должно работать само, ничего
дополнительно делать не надо. Если что-то не работает, то надо смотреть
что написано в /etc/resolv.conf и что выдает resolvconf -l.

-- 
WBR, Mikhail Efremov


Подробная информация о списке рассылки Sisyphus