systemd resolv should separate the output of stdout and stderr
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
systemd (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Eoan |
Fix Released
|
Undecided
|
Unassigned | ||
Focal |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[impact]
dhclient fails to notify resolved about DNS servers due to bash-specific redirect inside 'resolved' hook script
[test case]
see original description below
[regression potential]
any regression would likely cause resolved not to be aware of dhclient-provided dns servers
[other info]
This is needed only in Eoan and later; X/B/D do not have the bash-specific redirect '&>' in their hook file.
The change that originally added the &> to eoan is also being applied to b/d in bug 1805183, but with this fix added also.
original description:
---
The file /etc/dhcp/
provided by systemd (242-7ubuntu3) causes the dhclient failing to get DNS due to systemd-resolved is not run.
This issue can be reproduced on Ubuntu Eoan:
=======
root@eoan:~# dhclient -v
Internet Systems Consortium DHCP Client 4.4.1
Copyright 2004-2018 Internet Systems Consortium.
All rights reserved.
For info, please visit https:/
Listening on LPF/ens224/
Sending on LPF/ens224/
Listening on LPF/ens192/
Sending on LPF/ens192/
Listening on LPF/ens160/
Sending on LPF/ens160/
Sending on Socket/fallback
DHCPDISCOVER on ens224 to 255.255.255.255 port 67 interval 3 (xid=0x6d9fb33d)
DHCPDISCOVER on ens192 to 255.255.255.255 port 67 interval 3 (xid=0xeb8fda26)
DHCPREQUEST for 192.168.120.4 on ens160 to 255.255.255.255 port 67 (xid=0x6d39545d)
DHCPACK of 192.168.120.4 from 192.168.120.254 (xid=0x5d54396d)
RTNETLINK answers: File exists
d41d8cd98f00b20
md5sum: /run/systemd/
5025823d750dda1
md5sum: /run/systemd/
bound to 192.168.120.4 -- renewal in 111 seconds.
root@eoan:~# resolvectl status |grep DNS
MulticastDNS setting: no
DNSOverTLS setting: no
DNSSEC setting: no
DNSSEC supported: no
DNSSEC NTA: 10.in-addr.arpa
MulticastDNS setting: no
DNSOverTLS setting: no
DNSSEC setting: no
DNSSEC supported: no
MulticastDNS setting: no
DNSOverTLS setting: no
DNSSEC setting: no
DNSSEC supported: no
MulticastDNS setting: no
DNSOverTLS setting: no
DNSSEC setting: no
DNSSEC supported: no
=======
Attached please find the patch for this. The output for md5sum in the hook file resolv should separate the stdout and stderr so it won't compare the wrong data.
description: | updated |
Changed in systemd (Ubuntu Focal): | |
status: | Confirmed → Fix Committed |
description: | updated |
BTW, forgot to mention, after applying the patch in my system, I have to reboot the system then run "dhclient -v" so that the stale status of previous dhclient won't confuse it.