resolvconf should never touch /etc/resolv.conf in Ubuntu; all DNS configuration from resolvconf, ifupdown, and dhclient should always be fed directly to systemd-resolved.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ifupdown (Ubuntu) |
New
|
Undecided
|
Unassigned | ||
resolvconf (Ubuntu) |
New
|
Undecided
|
Unassigned | ||
systemd (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
systemd-resolved is a standard component of Ubuntu in 20.04. We should not have packages in the archive - some of which may be installed on users' systems as a result of upgrading from previous releases - that cause the handling of DNS resolution to diverge from the default.
This means that:
- the dhclient hook that picks up DNS settings should only feed settings directly to resolved, and not via resolvconf.
- resolvconf must not change the target of /etc/resolv.conf and on upgrade must correct it.
- resolvconf must feed its settings reliably into resolved rather than pulling resolved settings into resolvconf.
- systemd should not ship a dhclient hook at all because dhclient is not used by any systems that use netplan for network management, it is only needed for compatibility on upgrade with ifupdown; so move the hook to the ifupdown package.
Related branches
- Dimitri John Ledkov: Pending requested
-
Diff: 343 lines (+52/-183)6 files modifieddebian/changelog (+18/-0)
debian/postinst (+22/-52)
debian/resolvconf.maintscript (+1/-0)
debian/rules (+0/-1)
dev/null (+0/-81)
etc/resolvconf/update.d/libc (+11/-49)
- Dimitri John Ledkov (community): Approve (code-review)
-
Diff: 202 lines (+153/-1)6 files modifieddebian/changelog (+18/-0)
debian/control (+1/-1)
debian/ifupdown.dhclient-enter-hook (+20/-0)
debian/ifupdown.dhclient-exit-hook (+110/-0)
debian/ifupdown.maintscript (+1/-0)
debian/install (+3/-0)
tags: | added: id-5d8b46e355320863b343b291 |
tags: | added: resolved-resolvconf |
I have prepared xenial containers (last ones that used ifupdown / resolvconf by default) and configured it with:
- default resolvconf & dhcp acquired dns
- above, but with an extra dns nameserver specified in eni
- with resolvconf removed and static resolv.conf configuration
- with dhclient removed and static ip configuration
I've staged above updates in a bileto PPA and will execute upgrade to bionic, then upgrade to focal + bileto PPA.
The expectation is for every configuration above, that the configuration survives the upgrade, and dns configurations still work.