current base cloud-image does not have resolvconf, but has ifupdown. The following happens:
1) cloud-init starts 2) picks ifupdown renderer 3) renders eni 4) which uses auto dhcp 5) which calls dhclient 6) because there is no resolvconf installed, default make_resolve_conf function is used which is internal to isc-dhcp 7) /etc/resolv.conf stops being a symlink and is a regular file 8) NM starts, notices that /etc/resolv.conf is a regular file and thus is not managed by resolvconf/resolved 9) NM decides to manage /etc/resolv.conf, poorly This does kind of mean that on upgrades, if one removes resolvconf without removing ifupdown things go pear shaped. One option is to re-introduce ifupdown dependency on resolvconf. Another option is to ship isc-dhclient (dhcp-enter-hook) in systemd to override make_resolve_conf function. I've started writing such a hook which uses busctl to feed per-link dhcp info to resolved. However, that has it's own problems. dbus is not started early enough, and there is no private socket to resolved, meaning that updates are getting lost on boot when [email protected] units are udev triggered on hotplug. Currently working on preserving state in /run and replaying isc-dhclient gathered settings to resolved. -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to network-manager in Ubuntu. https://bugs.launchpad.net/bugs/1716833 Title: NM manages /etc/resolv.conf directly in artful after removal of resolvconf Status in network-manager package in Ubuntu: Triaged Status in network-manager source package in Artful: Triaged Bug description: The nplan autopkgtests are now failing in artful following the removal of resolvconf from the base system, with the following error: ====================================================================== FAIL: test_manual_addresses (__main__.TestNetworkManager) ---------------------------------------------------------------------- Traceback (most recent call last): File "/tmp/autopkgtest.4I4oae/build.Xcu/nplan-0.26/tests/integration.py", line 1110, in test_manual_addresses self.assertRegex(resolv_conf, 'search.*fakesuffix') AssertionError: Regex didn't match: 'search.*fakesuffix' not found in '# Generated by NetworkManager\nnameserver 127.0.1.1\n' It is possible that there is *also* a bug with nplan's integration with systemd-resolved; however, what this error message exposes is that NM is overwriting /etc/resolv.conf when this should now be managed by systemd-resolved instead. NM needs to inject its DNS server information into resolved instead of editing /etc/resolv.conf directly. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1716833/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : [email protected] Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp

