[Bug 1745463] Re: Disabling systemd-resolved breaks dhclient resolvconf integration
GeekSmith
lixo at geeksmith.net
Wed Apr 11 17:57:22 UTC 2018
To distill this down to its most basic form, let's try this.
When resolvconf or resolved is installed but disabled, its DHCP hook
script still executes and potentially interferes with the proper
operation of other hook scripts.
My patch ensures that these hook scripts only run when the corresponding
service is enabled.
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to resolvconf in Ubuntu.
https://bugs.launchpad.net/bugs/1745463
Title:
Disabling systemd-resolved breaks dhclient resolvconf integration
Status in resolvconf package in Ubuntu:
Incomplete
Status in systemd package in Ubuntu:
Invalid
Bug description:
To reproduce, mask resolved:
sudo systemctl mask systemd-resolved.service
...then disable network-manager for ifupdown interfaces:
$cat /etc/NetworkManager/NetworkManager.conf
[main]
plugins=ifupdown,keyfile
dns=default
rc-manager=resolvconf
[ifupdown]
managed=false
[device]
wifi.scan-rand-mac-address=no
...and reboot.
You'll note that resolvconf integration with dhclient is now broken.
Interfaces listed in /etc/network/interfaces or
/etc/network/interfaces.d/* will not provide DNS configuration in
/etc/resolv.conf and /run/resolvconf/interfaces/.
This is because /etc/dhcp/dhclient-enter-hooks.d/resolvconf defines
"make_resolv_conf()" as a valid function for the BOUND case, but
/etc/dhcp/dhclient-enter-hooks.d/resolved undefines it (who's nasty
now, eh?) even though resolved is masked.
The file existence check in the beginning of /etc/dhcp/dhclient-enter-
hooks.d/resolved should be more thorough, i.e. it should ensure that
resolved is enabled, rather than simply look for the existence of
/lib/systemd/systemd-resolved. This works for me:
-if [ -x /lib/systemd/systemd-resolved ] ; then
+if [ -x /lib/systemd/systemd-resolved ] && systemctl -q is-enabled systemd-resolved ; then
Arguably, /etc/dhcp/dhclient-enter-hooks.d/resolvconf should implement
a similar check, looking for /run/resolvconf/enable-updates as a
condition for meddling with DNS settings. If desired, I'll file a
separate bug for that package.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/resolvconf/+bug/1745463/+subscriptions
More information about the foundations-bugs
mailing list