Bug#929469: systemd-networkd: systemd-networkd: fails with "could not set address: Permission denied"

Raphaƫl Hertzog hertzog at debian.org
Fri May 24 08:30:50 BST 2019


Package: systemd
Version: 241-3
Severity: serious
File: systemd-networkd
User: devel at kali.org
Usertags: origin-kali

I upgraded an (OVH) dedicated server to Debian buster with systemd 241-3 and
while it rebooted correctly, the network did not came back. Looking into
the logs I saw the following messages:

May 20 12:37:10 euterpe systemd-networkd[756]: eno3: Could not bring up interface: Invalid argument
May 20 12:37:14 euterpe systemd-networkd[756]: eno3: Gained carrier
May 20 12:37:14 euterpe systemd-networkd[756]: eno3: could not set address: Permission denied

The configuration in use is the following:
$ cat /etc/systemd/network/50-default.network
# This file sets the IP configuration of the primary (public) network device.
# You can also see this as "OSI Layer 3" config.
# It was created by the OVH installer, please be careful with modifications.
# Documentation: man systemd.network or https://www.freedesktop.org/software/systemd/man/systemd.network.html

[Match]
MACAddress=ac:1f:6b:67:cd:e8

[Network]
Description=network interface on public network, with default route
DHCP=no
Address=54.39.104.6/24
Gateway=54.39.104.254
#IPv6AcceptRA=false
NTP=ntp.ovh.net
DNS=127.0.0.1
DNS=213.186.33.99
DNS=2001:41d0:3:163::1
Gateway=2607:5300:0203:39ff:ff:ff:ff:ff

[Address]
Address=2607:5300:0203:3906::/64

[Route]
Destination=2607:5300:0203:39ff:ff:ff:ff:ff
Scope=link

$ cat /etc/systemd/network/50-public-interface.link
# This file configures the relation between network device and device name.
# You can also see this as "OSI Layer 2" config.
# It was created by the OVH installer, please be careful with modifications.
# Documentation: man systemd.link or https://www.freedesktop.org/software/systemd/man/systemd.link.html

[Match]
MACAddress=ac:1f:6b:67:cd:e8

[Link]
Description=network interface on public network, with default route
MACAddressPolicy=persistent
NamePolicy=kernel database onboard slot path mac
#Name=eth0	# name under which this interface is known under OVH rescue system
#Name=eno3	# name under which this interface is probably known by systemd

The ethernet card is the following:
$ lspci -v
[...]
03:00.0 Ethernet controller: Intel Corporation Ethernet Connection X552/X557-AT 10GBASE-T
	Subsystem: Super Micro Computer Inc Ethernet Connection X552/X557-AT 10GBASE-T
	Flags: bus master, fast devsel, latency 0, IRQ 11
	Memory at 383fffc00000 (64-bit, prefetchable)
	Memory at 383fffe04000 (64-bit, prefetchable)
	Expansion ROM at fb180000 [disabled]
	Capabilities: [40] Power Management version 3
	Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
	Capabilities: [70] MSI-X: Enable+ Count=64 Masked-
	Capabilities: [a0] Express Endpoint, MSI 00

03:00.1 Ethernet controller: Intel Corporation Ethernet Connection X552/X557-AT 10GBASE-T
	Subsystem: Super Micro Computer Inc Ethernet Connection X552/X557-AT 10GBASE-T
	Flags: bus master, fast devsel, latency 0, IRQ 10
	Memory at 383fffa00000 (64-bit, prefetchable)
	Memory at 383fffe00000 (64-bit, prefetchable)
	Expansion ROM at fb100000 [disabled]
	Capabilities: [40] Power Management version 3
	Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
	Capabilities: [70] MSI-X: Enable+ Count=64 Masked-
	Capabilities: [a0] Express Endpoint, MSI 00
[...]

It is handled by the "ixgbe" kernel driver:
$ grep ixgbe /var/log/kern.log:
May 23 21:19:38 euterpe kernel: [    1.896199] ixgbe: Intel(R) 10 Gigabit PCI Express Network Driver - version 5.1.0-k
May 23 21:19:38 euterpe kernel: [    1.908671] ixgbe: Copyright (c) 1999-2016 Intel Corporation.
May 23 21:19:38 euterpe kernel: [    3.471556] ixgbe 0000:03:00.0: Multiqueue Enabled: Rx Queue count = 8, Tx Queue count = 8 XDP Queue count = 0
May 23 21:19:38 euterpe kernel: [    3.619415] ixgbe 0000:03:00.0: MAC: 5, PHY: 7, PBA No: 023A00-000
May 23 21:19:38 euterpe kernel: [    3.628980] ixgbe 0000:03:00.0: ac:1f:6b:67:cd:e8
May 23 21:19:38 euterpe kernel: [    3.689232] ixgbe 0000:03:00.0: Intel(R) 10 Gigabit Network Connection
May 23 21:19:38 euterpe kernel: [    5.487530] ixgbe 0000:03:00.1: Multiqueue Enabled: Rx Queue count = 8, Tx Queue count = 8 XDP Queue count = 0
May 23 21:19:38 euterpe kernel: [    5.627263] ixgbe 0000:03:00.1: MAC: 5, PHY: 7, PBA No: 023A00-000
May 23 21:19:38 euterpe kernel: [    5.634459] ixgbe 0000:03:00.1: ac:1f:6b:67:cd:e9
May 23 21:19:38 euterpe kernel: [    5.696963] ixgbe 0000:03:00.1: Intel(R) 10 Gigabit Network Connection
May 23 21:19:38 euterpe kernel: [    5.707134] ixgbe 0000:03:00.1 eno4: renamed from eth1
May 23 21:19:38 euterpe kernel: [    5.733678] ixgbe 0000:03:00.0 eno3: renamed from eth0
May 23 21:19:39 euterpe kernel: [   22.934955] ixgbe 0000:03:00.0: registered PHC device on eno3
May 23 21:19:43 euterpe kernel: [   27.453172] ixgbe 0000:03:00.0 eno3: NIC Link is Up 1 Gbps, Flow Control: None


Trying to narrow down the problem, I switched the OVH kernel with the
Debian official kernel but the problem was unchanged. I then upgraded
to systemd 242-1 from experimental but the problem was still there.
I added two recent patches to systemd
(https://github.com/systemd/systemd/pull/12466 and
https://github.com/systemd/systemd/pull/12505) and I got rid of the first
error message ("eno3: Could not bring up interface: Invalid argument")
but the second error messages was still there and the problem persisted
(the network was not configured).

Cheers,

The information below matches my last try (with a patched systemd)
and has been gathered with reportbug --template from the machine booted in a
rescue mode, so I dropped the kernel version which was inaccurate.

-- Package-specific info:

-- System Information:
Debian Release: 10.0
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Versions of packages systemd depends on:
ii  adduser          3.118
ii  libacl1          2.2.53-4
ii  libapparmor1     2.13.2-10
ii  libaudit1        1:2.8.4-3
ii  libblkid1        2.33.1-0.1
ii  libc6            2.28-10
ii  libcap2          1:2.25-2
ii  libcryptsetup12  2:2.1.0-3
ii  libgcrypt20      1.8.4-5
ii  libgnutls30      3.6.6-2
ii  libgpg-error0    1.35-1
ii  libidn2-0        2.0.5-1
ii  libip4tc0        1.8.2-4
ii  libkmod2         26-1
ii  liblz4-1         1.8.3-1
ii  liblzma5         5.2.4-1
ii  libmount1        2.33.1-0.1
ii  libpam0g         1.3.1-5
ii  libpcre2-8-0     10.32-5
ii  libseccomp2      2.3.3-4
ii  libselinux1      2.8-1+b1
ii  libsystemd0      242-1+PR12466+PR12505
ii  mount            2.33.1-0.1
ii  util-linux       2.33.1-0.1

Versions of packages systemd recommends:
ii  dbus            1.12.12-1
ii  libpam-systemd  242-1+PR12466+PR12505

Versions of packages systemd suggests:
pn  policykit-1        <none>
pn  systemd-container  <none>

Versions of packages systemd is related to:
pn  dracut           <none>
ii  initramfs-tools  0.133
ii  udev             242-1+PR12466+PR12505

-- Configuration Files:
/etc/systemd/system.conf changed:
[Manager]
LogLevel=debug


-- no debconf information

-- Your systemd-delta.txt generated by reportbug --template:
[OVERRIDDEN] /etc/tmpfiles.d/screen-cleanup.conf -> /usr/lib/tmpfiles.d/screen-cleanup.conf

--- /usr/lib/tmpfiles.d/screen-cleanup.conf	2017-07-01 12:07:57.000000000 +0000
+++ /etc/tmpfiles.d/screen-cleanup.conf	2019-05-21 09:29:54.488978518 +0000
@@ -1 +1 @@
-d /run/screen 0777 root utmp
+d /run/screen 1777 root utmp

[MASKED]     /etc/systemd/system/openqa-setup-db.service -> /lib/systemd/system/openqa-setup-db.service
[EXTENDED]   /lib/systemd/system/rc-local.service -> /lib/systemd/system/rc-local.service.d/debian.conf
[EXTENDED]   /lib/systemd/system/systemd-resolved.service -> /lib/systemd/system/systemd-resolved.service.d/resolvconf.conf
[EXTENDED]   /lib/systemd/system/systemd-timesyncd.service -> /lib/systemd/system/systemd-timesyncd.service.d/disable-with-time-daemon.conf

5 overridden configuration files found.

-- Your dsh-enabled.txt generated by reportbug --template
==> /var/lib/systemd/deb-systemd-helper-enabled/blk-availability.service.dsh-also <==
/etc/systemd/system/sysinit.target.wants/blk-availability.service

==> /var/lib/systemd/deb-systemd-helper-enabled/dm-event.socket.dsh-also <==
/etc/systemd/system/sockets.target.wants/dm-event.socket

==> /var/lib/systemd/deb-systemd-helper-enabled/bind9-pkcs11.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/bind9-pkcs11.service

==> /var/lib/systemd/deb-systemd-helper-enabled/os-autoinst-openvswitch.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/os-autoinst-openvswitch.service

==> /var/lib/systemd/deb-systemd-helper-enabled/vgauth.service.dsh-also <==
/etc/systemd/system/open-vm-tools.service.requires/vgauth.service

==> /var/lib/systemd/deb-systemd-helper-enabled/sshd.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/sockets.target.wants/dm-event.socket <==

==> /var/lib/systemd/deb-systemd-helper-enabled/keyboard-setup.service.dsh-also <==
/etc/systemd/system/sysinit.target.wants/keyboard-setup.service

==> /var/lib/systemd/deb-systemd-helper-enabled/postgresql.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/postgresql.service

==> /var/lib/systemd/deb-systemd-helper-enabled/etckeeper.timer.dsh-also <==
/etc/systemd/system/multi-user.target.wants/etckeeper.timer

==> /var/lib/systemd/deb-systemd-helper-enabled/openqa-setup-db.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/openqa-setup-db.service

==> /var/lib/systemd/deb-systemd-helper-enabled/open-vm-tools.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/open-vm-tools.service

==> /var/lib/systemd/deb-systemd-helper-enabled/dm-event.service.dsh-also <==
/etc/systemd/system/sysinit.target.wants/dm-event.service

==> /var/lib/systemd/deb-systemd-helper-enabled/rsyslog.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/rsyslog.service
/etc/systemd/system/syslog.service

==> /var/lib/systemd/deb-systemd-helper-enabled/apache2.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/apache2.service

==> /var/lib/systemd/deb-systemd-helper-enabled/openqa-slirpvde.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/openqa-slirpvde.service

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/postfix.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/networking.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/apache2.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/console-setup.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/openqa-gru.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/rsync.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/ssh.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/etckeeper.timer <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/openqa-setup-db.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/netfilter-persistent.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/rsyslog.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/openqa-websockets.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/ntp.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/irqbalance.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/smartd.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/openqa-scheduler.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/salt-minion.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/openqa-worker.target <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/openqa-webui.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/cron.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/openqa-livehandler.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/os-autoinst-openvswitch.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/openqa-vde_switch.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/openqa-slirpvde.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/open-vm-tools.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/bind9.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/multi-user.target.wants/postgresql.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/netfilter-persistent.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/netfilter-persistent.service

==> /var/lib/systemd/deb-systemd-helper-enabled/salt-minion.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/salt-minion.service

==> /var/lib/systemd/deb-systemd-helper-enabled/rsync.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/rsync.service

==> /var/lib/systemd/deb-systemd-helper-enabled/openqa-worker.target.dsh-also <==
/etc/systemd/system/multi-user.target.wants/openqa-worker.target

==> /var/lib/systemd/deb-systemd-helper-enabled/ssh.socket.dsh-also <==
/etc/systemd/system/sockets.target.wants/ssh.socket

==> /var/lib/systemd/deb-systemd-helper-enabled/bind9.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/bind9.service

==> /var/lib/systemd/deb-systemd-helper-enabled/logrotate.timer.dsh-also <==
/etc/systemd/system/timers.target.wants/logrotate.timer

==> /var/lib/systemd/deb-systemd-helper-enabled/openqa-scheduler.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/openqa-scheduler.service

==> /var/lib/systemd/deb-systemd-helper-enabled/network-online.target.wants/networking.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/ntp.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/ntp.service

==> /var/lib/systemd/deb-systemd-helper-enabled/fstrim.timer.dsh-also <==
/etc/systemd/system/timers.target.wants/fstrim.timer

==> /var/lib/systemd/deb-systemd-helper-enabled/man-db.timer.dsh-also <==
/etc/systemd/system/timers.target.wants/man-db.timer

==> /var/lib/systemd/deb-systemd-helper-enabled/lvm2-lvmetad.service.dsh-also <==
/etc/systemd/system/sysinit.target.wants/lvm2-lvmetad.service

==> /var/lib/systemd/deb-systemd-helper-enabled/cron.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/cron.service

==> /var/lib/systemd/deb-systemd-helper-enabled/smartd.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/smartd.service

==> /var/lib/systemd/deb-systemd-helper-enabled/openqa-livehandler.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/openqa-livehandler.service

==> /var/lib/systemd/deb-systemd-helper-enabled/lvm2-lvmpolld.socket.dsh-also <==
/etc/systemd/system/sysinit.target.wants/lvm2-lvmpolld.socket

==> /var/lib/systemd/deb-systemd-helper-enabled/lvm2-monitor.service.dsh-also <==
/etc/systemd/system/sysinit.target.wants/lvm2-monitor.service

==> /var/lib/systemd/deb-systemd-helper-enabled/ifupdown-wait-online.service.dsh-also <==
/etc/systemd/system/network-online.target.wants/ifupdown-wait-online.service

==> /var/lib/systemd/deb-systemd-helper-enabled/apt-daily-upgrade.timer.dsh-also <==
/etc/systemd/system/timers.target.wants/apt-daily-upgrade.timer

==> /var/lib/systemd/deb-systemd-helper-enabled/openqa-gru.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/openqa-gru.service

==> /var/lib/systemd/deb-systemd-helper-enabled/open-vm-tools.service.requires/vgauth.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/irqbalance.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/irqbalance.service

==> /var/lib/systemd/deb-systemd-helper-enabled/ipmievd.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/ipmievd.service
/etc/systemd/system/ipmi.service

==> /var/lib/systemd/deb-systemd-helper-enabled/timers.target.wants/apt-daily.timer <==

==> /var/lib/systemd/deb-systemd-helper-enabled/timers.target.wants/logrotate.timer <==

==> /var/lib/systemd/deb-systemd-helper-enabled/timers.target.wants/man-db.timer <==

==> /var/lib/systemd/deb-systemd-helper-enabled/timers.target.wants/apt-daily-upgrade.timer <==

==> /var/lib/systemd/deb-systemd-helper-enabled/openqa-webui.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/openqa-webui.service

==> /var/lib/systemd/deb-systemd-helper-enabled/console-setup.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/console-setup.service

==> /var/lib/systemd/deb-systemd-helper-enabled/apache-htcacheclean.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/apache-htcacheclean.service

==> /var/lib/systemd/deb-systemd-helper-enabled/ssh.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/ssh.service
/etc/systemd/system/sshd.service

==> /var/lib/systemd/deb-systemd-helper-enabled/networking.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/networking.service
/etc/systemd/system/network-online.target.wants/networking.service

==> /var/lib/systemd/deb-systemd-helper-enabled/sysinit.target.wants/blk-availability.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/sysinit.target.wants/keyboard-setup.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/sysinit.target.wants/lvm2-lvmpolld.socket <==

==> /var/lib/systemd/deb-systemd-helper-enabled/sysinit.target.wants/lvm2-monitor.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/openqa-websockets.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/openqa-websockets.service

==> /var/lib/systemd/deb-systemd-helper-enabled/postfix.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/postfix.service

==> /var/lib/systemd/deb-systemd-helper-enabled/lvm2-lvmpolld.service.dsh-also <==
/etc/systemd/system/sysinit.target.wants/lvm2-lvmpolld.service

==> /var/lib/systemd/deb-systemd-helper-enabled/bind9-resolvconf.service.dsh-also <==
/etc/systemd/system/bind9.service.wants/bind9-resolvconf.service

==> /var/lib/systemd/deb-systemd-helper-enabled/syslog.service <==

==> /var/lib/systemd/deb-systemd-helper-enabled/apt-daily.timer.dsh-also <==
/etc/systemd/system/timers.target.wants/apt-daily.timer

==> /var/lib/systemd/deb-systemd-helper-enabled/openqa-vde_switch.service.dsh-also <==
/etc/systemd/system/multi-user.target.wants/openqa-vde_switch.service



More information about the Pkg-systemd-maintainers mailing list