2019-11-19 15:40:27 |
Mason Loring Bliss |
bug |
|
|
added bug |
2019-11-19 15:40:27 |
Mason Loring Bliss |
attachment added |
|
Check for active service, not existence of binary. https://bugs.launchpad.net/bugs/1853164/+attachment/5306478/+files/systemd-resolved.patch |
|
2019-11-19 15:41:42 |
Mason Loring Bliss |
attachment added |
|
Check for active service, not existence of binary. https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1853164/+attachment/5306479/+files/systemd-resolved.patch |
|
2019-11-19 15:42:01 |
Mason Loring Bliss |
attachment removed |
Check for active service, not existence of binary. https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1853164/+attachment/5306479/+files/systemd-resolved.patch |
|
|
2019-11-19 15:46:33 |
Robie Basak |
bug |
|
|
added subscriber Robie Basak |
2019-11-19 16:02:50 |
Simon Déziel |
bug |
|
|
added subscriber Simon Déziel |
2019-11-19 16:17:13 |
Dimitri John Ledkov |
tags |
|
rls-ff-incoming |
|
2019-11-19 16:26:38 |
Ubuntu Foundations Team Bug Bot |
tags |
rls-ff-incoming |
patch rls-ff-incoming |
|
2019-11-19 16:26:44 |
Ubuntu Foundations Team Bug Bot |
bug |
|
|
added subscriber Ubuntu Review Team |
2019-11-21 19:28:00 |
Brian Murray |
nominated for series |
|
Ubuntu Focal |
|
2019-11-21 19:28:00 |
Brian Murray |
bug task added |
|
systemd (Ubuntu Focal) |
|
2019-11-21 19:28:09 |
Brian Murray |
systemd (Ubuntu Focal): status |
New |
Triaged |
|
2019-11-21 19:28:12 |
Brian Murray |
systemd (Ubuntu Focal): importance |
Undecided |
Low |
|
2019-11-21 19:57:21 |
Dan Streetman |
bug |
|
|
added subscriber Dan Streetman |
2019-11-25 22:30:46 |
Steve Langasek |
tags |
patch rls-ff-incoming |
patch rls-ff-notfixing |
|
2019-11-25 22:30:51 |
Steve Langasek |
bug |
|
|
added subscriber Steve Langasek |
2020-03-12 20:27:30 |
Dan Streetman |
tags |
patch rls-ff-notfixing |
patch resolved-resolvconf rls-ff-notfixing |
|
2020-04-14 09:38:24 |
Dan Streetman |
tags |
patch resolved-resolvconf rls-ff-notfixing |
ddstreet patch resolved-resolvconf rls-ff-notfixing |
|
2020-04-22 06:42:04 |
Launchpad Janitor |
merge proposal linked |
|
https://code.launchpad.net/~vorlon/ubuntu/+source/ifupdown/+git/ifupdown/+merge/382729 |
|
2020-07-06 18:09:59 |
Dan Streetman |
tags |
ddstreet patch resolved-resolvconf rls-ff-notfixing |
patch resolved-resolvconf rls-ff-notfixing |
|
2021-06-29 09:09:44 |
Dan Streetman |
systemd (Ubuntu): status |
Triaged |
Fix Released |
|
2021-06-29 09:27:02 |
Dan Streetman |
description |
The functionality exists to allow users to revert to the traditional ifupdown
package for network configuration. Alongside this, systemd's often-buggy
resolver can be disabled. However, there's a logic error in the systemd-
supplied /etc/dhcp/dhclient-enter-hooks.d/resolved that prevents the system
from populating /etc/resolv.conf properly when systemd-resolved is disabled.
The issue is here:
if [ -x /lib/systemd/systemd-resolved ] ; then
Instead of checking to see if the systemd-resolved service is enabled or
active, which would be the correct behaviour, this checks for the existence of
a binary, assuming that if it exists it's supposed to be used.
I've not tested this in the absence of resolvconf, but if systemd-resolved
isn't enabled, it's difficult to imagine this code wanting to run. I've tested
this with resolvconf and ifupdown driving dhclient, and it corrects the
behaviour that was broken with the introduction of systemd-resolved.
I'm attaching a patch, and am also including it here for easy access:
*** resolved.broken 2019-11-19 15:01:28.785588838 +0000
--- resolved 2019-11-19 15:08:06.519430073 +0000
***************
*** 14,20 ****
# (D) = master script downs interface
# (-) = master script does nothing with this
! if [ -x /lib/systemd/systemd-resolved ] ; then
# For safety, first undefine the nasty default make_resolv_conf()
make_resolv_conf() { : ; }
case "$reason" in
--- 14,21 ----
# (D) = master script downs interface
# (-) = master script does nothing with this
! systemctl is-active systemd-resolved > /dev/null 2>&1
! if [ $? -eq 0 ]; then
# For safety, first undefine the nasty default make_resolv_conf()
make_resolv_conf() { : ; }
case "$reason" in |
[impact]
with systemd-resolved disabled, dhclient doesn't correctly notify resolvconf about dns server(s)
[test case]
install resolvconf and ifupdown and disable systemd-resolved and systemd-networkd, use ifupdown to get a dhcp address where the lease includes a dns nameserver, verify resolvconf is using that dhcp-provided nameserver
[regression potential]
failure to correctly notify systemd-resolved about new dhclient-provided nameserver(s)
[scope]
this is needed for f and earlier
in g and later the hook script is moved to the isc-dhcp package, and edited to correctly check is-enabled systemd-resolved instead of only checking for the existence of the binary
[original description]
The functionality exists to allow users to revert to the traditional ifupdown
package for network configuration. Alongside this, systemd's often-buggy
resolver can be disabled. However, there's a logic error in the systemd-
supplied /etc/dhcp/dhclient-enter-hooks.d/resolved that prevents the system
from populating /etc/resolv.conf properly when systemd-resolved is disabled.
The issue is here:
if [ -x /lib/systemd/systemd-resolved ] ; then
Instead of checking to see if the systemd-resolved service is enabled or
active, which would be the correct behaviour, this checks for the existence of
a binary, assuming that if it exists it's supposed to be used.
I've not tested this in the absence of resolvconf, but if systemd-resolved
isn't enabled, it's difficult to imagine this code wanting to run. I've tested
this with resolvconf and ifupdown driving dhclient, and it corrects the
behaviour that was broken with the introduction of systemd-resolved.
I'm attaching a patch, and am also including it here for easy access:
*** resolved.broken 2019-11-19 15:01:28.785588838 +0000
--- resolved 2019-11-19 15:08:06.519430073 +0000
***************
*** 14,20 ****
# (D) = master script downs interface
# (-) = master script does nothing with this
! if [ -x /lib/systemd/systemd-resolved ] ; then
# For safety, first undefine the nasty default make_resolv_conf()
make_resolv_conf() { : ; }
case "$reason" in
--- 14,21 ----
# (D) = master script downs interface
# (-) = master script does nothing with this
! systemctl is-active systemd-resolved > /dev/null 2>&1
! if [ $? -eq 0 ]; then
# For safety, first undefine the nasty default make_resolv_conf()
make_resolv_conf() { : ; }
case "$reason" in |
|
2021-06-29 15:48:25 |
Thayne |
bug watch added |
|
https://github.com/systemd/systemd/issues/5755 |
|
2021-06-29 16:57:31 |
Dan Streetman |
systemd (Ubuntu Focal): assignee |
|
Dan Streetman (ddstreet) |
|
2021-06-29 16:57:33 |
Dan Streetman |
systemd (Ubuntu Focal): status |
Triaged |
In Progress |
|
2021-06-30 17:23:31 |
Daniel Richard G. |
bug |
|
|
added subscriber Daniel Richard G. |
2021-07-05 02:34:46 |
Dan Streetman |
nominated for series |
|
Ubuntu Bionic |
|
2021-07-05 02:34:46 |
Dan Streetman |
bug task added |
|
systemd (Ubuntu Bionic) |
|
2021-07-05 02:34:56 |
Dan Streetman |
systemd (Ubuntu Bionic): importance |
Undecided |
Low |
|
2021-07-08 23:34:45 |
Brian Murray |
systemd (Ubuntu Focal): status |
In Progress |
Fix Committed |
|
2021-07-08 23:34:47 |
Brian Murray |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2021-07-08 23:34:49 |
Brian Murray |
bug |
|
|
added subscriber SRU Verification |
2021-07-08 23:34:53 |
Brian Murray |
tags |
patch resolved-resolvconf rls-ff-notfixing |
patch resolved-resolvconf rls-ff-notfixing verification-needed verification-needed-focal |
|
2021-07-11 21:49:55 |
Dan Streetman |
tags |
patch resolved-resolvconf rls-ff-notfixing verification-needed verification-needed-focal |
patch resolved-resolvconf rls-ff-notfixing verification-done verification-done-focal |
|
2021-07-20 16:58:37 |
Launchpad Janitor |
systemd (Ubuntu Focal): status |
Fix Committed |
Fix Released |
|
2021-07-20 16:58:37 |
Launchpad Janitor |
cve linked |
|
2020-13529 |
|
2021-07-20 16:58:37 |
Launchpad Janitor |
cve linked |
|
2021-33910 |
|
2021-09-01 01:34:31 |
Chris Halse Rogers |
systemd (Ubuntu Bionic): status |
New |
Fix Committed |
|
2021-09-01 01:34:43 |
Chris Halse Rogers |
tags |
patch resolved-resolvconf rls-ff-notfixing verification-done verification-done-focal |
patch resolved-resolvconf rls-ff-notfixing verification-done-focal verification-needed verification-needed-bionic |
|
2021-09-09 13:53:48 |
Dan Streetman |
tags |
patch resolved-resolvconf rls-ff-notfixing verification-done-focal verification-needed verification-needed-bionic |
patch resolved-resolvconf rls-ff-notfixing verification-done verification-done-bionic verification-done-focal |
|
2021-09-15 03:16:06 |
Chris Halse Rogers |
removed subscriber Ubuntu Stable Release Updates Team |
|
|
|
2021-09-15 03:23:41 |
Launchpad Janitor |
systemd (Ubuntu Bionic): status |
Fix Committed |
Fix Released |
|