[Bug 1860926] Re: Ubuntu 20.04 Systemd fails to configure bridged network
Ricardo Ortega
rortega2 at hotmail.com
Fri May 15 19:37:43 UTC 2020
Using ubuntu-20.04-live-server-amd64.iso I created an USB and did fresh
install, after fresh install I ran apt get update followed by apt get
upgrade, I then removed the existing yaml in /etc/netplan and added
99_config.yaml:
labuser at lab:~$ sudo nano /etc/netplan/99_config.yaml
labuser at lab:~$ sudo cat /etc/netplan/99_config.yaml
network:
version: 2
renderer: networkd
ethernets:
enp0s25:
dhcp4: no
dhcp6: no
bridges:
br0:
interfaces: [enp0s25]
dhcp4: no
addresses: [10.59.2.57/24]
gateway4: 10.59.2.1
nameservers:
search: [mydomain, otherdomain]
addresses: [209.18.47.61, 209.18.47.62]
labuser at lab:~$ sudo shutdown -r
labuser at lab:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s25: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UP group default qlen 1000
link/ether 3c:d9:2b:4f:01:80 brd ff:ff:ff:ff:ff:ff
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 3c:d9:2b:4f:01:80 brd ff:ff:ff:ff:ff:ff
inet6 fe80::ac4c:ffff:fe1b:21b7/64 scope link
valid_lft forever preferred_lft forever
labuser at lab:~$ sudo net apply
labuser at lab:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s25: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UP group default qlen 1000
link/ether 3c:d9:2b:4f:01:80 brd ff:ff:ff:ff:ff:ff
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 3c:d9:2b:4f:01:80 brd ff:ff:ff:ff:ff:ff
inet 10.59.2.57/24 brd 10.59.2.255 scope global br0
valid_lft forever preferred_lft forever
inet6 fe80::ac4c:ffff:fe1b:21b7/64 scope link
valid_lft forever preferred_lft forever
labuser at lab:~$ dpkg -l systemd
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-==============-============-=================================
ii systemd 245.4-4ubuntu3 amd64 system and service manager
labuser at lab:~$ cat /etc/os-release
NAME="Ubuntu"
VERSION="20.04 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
labuser at lab:~$ sudo nano /etc/apt/sources.list
labuser at lab:~$ sudo cat /etc/apt/sources.list | grep proposed
deb http://archive.ubuntu.com/ubuntu/ focal-proposed restricted main multiverse universe
labuser at lab:~$ sudo apt update
labuser at lab:~$ sudo apt install systemd
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libnss-systemd libpam-systemd libsystemd0 systemd-sysv systemd-timesyncd
Suggested packages:
systemd-container
The following packages will be upgraded:
libnss-systemd libpam-systemd libsystemd0 systemd systemd-sysv
systemd-timesyncd
6 upgraded, 0 newly installed, 0 to remove and 15 not upgraded.
Need to get 4385 kB of archives.
After this operation, 9216 B of additional disk space will be used.
Do you want to continue? [Y/n]
labuser at lab:~$ sudo shutdown -r
labuser at lab:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s25: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UP group default qlen 1000
link/ether 3c:d9:2b:4f:01:80 brd ff:ff:ff:ff:ff:ff
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 3c:d9:2b:4f:01:80 brd ff:ff:ff:ff:ff:ff
inet 10.59.2.57/24 brd 10.59.2.255 scope global br0
valid_lft forever preferred_lft forever
inet6 fe80::84eb:bdff:feb1:f4e2/64 scope link
valid_lft forever preferred_lft forever
labuser at lab:~$ dpkg -l systemd
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-================-============-==============================>
ii systemd 245.4-4ubuntu3.1 amd64 system and service manager
systemd was updated from 245.4-4ubuntu3 to 245.4-4ubuntu3.1 (proposed)
and after reboot I was able to get static IP.
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/1860926
Title:
Ubuntu 20.04 Systemd fails to configure bridged network
Status in systemd package in Ubuntu:
Fix Released
Status in systemd source package in Bionic:
In Progress
Status in systemd source package in Eoan:
Fix Committed
Status in systemd source package in Focal:
Fix Committed
Status in systemd source package in Groovy:
Fix Released
Bug description:
[impact]
A bridged interface with static ipv4 address and gateway configuration
will fail to properly add the route via the gateway, leaving the
system without a globally working network.
[test case]
On a Focal system, remove all network configuration and create this
netplan:
network:
version: 2
renderer: networkd
ethernets:
enp4s0:
dhcp4: false
bridges:
br0:
interfaces: [enp4s0]
dhcp4: no
addresses: [192.168.0.4/24]
gateway4: 192.168.0.1
nameservers:
search: [mydomain]
addresses: [192.168.0.1,192.168.0.2,192.168.0.3]
Replace the interface name 'enp4s0' with the actual interface name on
the test system.
Reboot the system, and check the route to the gateway, which will be
missing:
root at lp1860926-f:~# ip r
192.168.0.0/24 dev br0 proto kernel scope link src 192.168.0.4
The route is expected to be present, e.g.:
ubuntu at lp1860926-e:~$ ip r
default via 192.168.0.1 dev br0 proto static
192.168.0.0/24 dev br0 proto kernel scope link src 192.168.0.4
[test case, pre-focal]
same netplan as above, but remove ethernets: section. Reboot, and the
bridge should have its address and route:
ubuntu at test-e:~$ ip a show br0
3: br0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 56:11:da:23:bb:93 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.4/24 brd 192.168.0.255 scope global br0
valid_lft forever preferred_lft forever
ubuntu at test-e:~$ ip r
default via 192.168.0.1 dev br0 proto static linkdown
192.168.0.0/24 dev br0 proto kernel scope link src 192.168.0.4 linkdown
add and remove carrier, by adding and removing a slave interface:
ubuntu at test-e:~$ sudo ip l set dev ens3 master br0 up
ubuntu at test-e:~$ ip a show br0
3: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 56:11:da:23:bb:93 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.4/24 brd 192.168.0.255 scope global br0
valid_lft forever preferred_lft forever
inet6 fe80::5411:daff:fe23:bb93/64 scope link
valid_lft forever preferred_lft forever
ubuntu at test-e:~$ sudo ip l set dev ens3 nomaster
the bridge no longer has its address after losing carrier:
ubuntu at test-e:~$ ip a show br0
3: br0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 56:11:da:23:bb:93 brd ff:ff:ff:ff:ff:ff
inet6 fe80::5411:daff:fe23:bb93/64 scope link
valid_lft forever preferred_lft forever
[regression potential]
Any regression would likely involve incorrectly configured network
after an interface carrier gain/loss.
[scope]
This is needed for Focal, Eoan, and Bionic.
While this only reproduces at boot for Focal, the general loss of
configuration on carrier loss even when ConfigureWithoutCarrier=true
is reproducable on all releases except Xenial, which does not have the
ConfigureWithoutCarrier= parameter.
[original description]
Freshly installed Ubuntu 20.04 fully patched to days date with static
IP address works fine and survives a reboot
network:
version: 2
renderer: networkd
ethernets:
enp4s0:
dhcp4: false
addresses: [192.168.0.4/24]
gateway4: 192.168.0.1
nameservers:
search: [mydomain]
addresses: [192.168.0.1,192.168.0.2,192.168.0.3]
however when converted to a bridged network for kvm
network:
version: 2
renderer: networkd
ethernets:
enp4s0:
dhcp4: false
bridges:
br0:
interfaces: [enp4s0]
dhcp4: no
addresses: [192.168.0.4/24]
gateway4: 192.168.0.1
nameservers:
search: [mydomain]
addresses: [192.168.0.1,192.168.0.2,192.168.0.3]
will not survive a reboot and required systemd-network to be restarted or
@reboot /usr/sbin/netplan apply
added to the crontab
after a reboot the network can not b eaccseed and a
systemctl status systemd-networkd produces
systemd-networkd.service - Network Service
Loaded: loaded (/lib/systemd/system/systemd-networkd.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2020-01-26 16:36:28 UTC; 2min 27s ago
TriggeredBy: ● systemd-networkd.socket
Docs: man:systemd-networkd.service(8)
Main PID: 979 (systemd-network)
Status: "Processing requests..."
Tasks: 1 (limit: 57662)
Memory: 4.1M
CGroup: /system.slice/systemd-networkd.service
└─979 /lib/systemd/systemd-networkd
Jan 26 16:38:02 firebolt systemd-networkd[979]: rtnl: received neighbor for link '5' we don't know about, ignoring.
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: rtnl: received neighbor message with invalid family, ignoring.
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: rtnl: received neighbor message with invalid family, ignoring.
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0: rtnl: received neighbor message with invalid family, ignoring.
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: Link UP
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: Gained carrier
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0: Link UP
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: Link DOWN
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: Lost carrier
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: Kernel removed an address we don't remember: fe80::5054:ff:fed9:7e26/64 (valid forever), ignoring.
systemctl restart systemd-networkd resolved the issue and a
systemctl status systemd-network producessystemd-networkd.service - Network Service
Loaded: loaded (/lib/systemd/system/systemd-networkd.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2020-01-26 16:39:28 UTC; 41s ago
TriggeredBy: ● systemd-networkd.socket
Docs: man:systemd-networkd.service(8)
Main PID: 1650 (systemd-network)
Status: "Processing requests..."
Tasks: 1 (limit: 57662)
Memory: 1.6M
CGroup: /system.slice/systemd-networkd.service
└─1650 /lib/systemd/systemd-networkd
Jan 26 16:39:28 firebolt systemd[1]: Starting Network Service...
Jan 26 16:39:28 firebolt systemd-networkd[1650]: br0: netdev ready
Jan 26 16:39:28 firebolt systemd-networkd[1650]: br0: Gained IPv6LL
Jan 26 16:39:28 firebolt systemd-networkd[1650]: Enumeration completed
Jan 26 16:39:28 firebolt systemd[1]: Started Network Service.
Jan 26 16:39:28 firebolt systemd-networkd[1650]: br0: netdev exists, using existing without changing its parameters
Jan 26 16:39:28 firebolt systemd-networkd[1650]: br0: IPv6 successfully enabled
a journalctl -u systemd-network produces
Jan 26 16:36:28 firebolt systemd[1]: Starting Network Service...
Jan 26 16:36:28 firebolt systemd-networkd[979]: br0: netdev ready
Jan 26 16:36:28 firebolt systemd-networkd[979]: Enumeration completed
Jan 26 16:36:28 firebolt systemd-networkd[979]: wlp3s0: Interface name change detected, wlp3s0 has been renamed to wlan0.
Jan 26 16:36:28 firebolt systemd[1]: Started Network Service.
Jan 26 16:36:28 firebolt systemd-networkd[979]: wlan0: Interface name change detected, wlan0 has been renamed to wlp3s0.
Jan 26 16:36:28 firebolt systemd-networkd[979]: br0: rtnl: received neighbor message with invalid family, ignoring.
Jan 26 16:36:28 firebolt systemd-networkd[979]: br0: IPv6 successfully enabled
Jan 26 16:36:28 firebolt systemd-networkd[979]: br0: Link UP
Jan 26 16:36:28 firebolt systemd-networkd[979]: br0: Gained carrier
Jan 26 16:36:28 firebolt systemd-networkd[979]: enp4s0: rtnl: received neighbor message with invalid family, ignoring.
Jan 26 16:36:28 firebolt systemd-networkd[979]: enp4s0: rtnl: received neighbor message with invalid family, ignoring.
Jan 26 16:36:28 firebolt systemd-networkd[979]: br0: rtnl: received neighbor message with invalid family, ignoring.
Jan 26 16:36:28 firebolt systemd-networkd[979]: br0: Lost carrier
Jan 26 16:36:28 firebolt systemd-networkd[979]: enp4s0: Link UP
Jan 26 16:36:28 firebolt systemd-networkd[979]: br0: Gained carrier
Jan 26 16:36:28 firebolt systemd-networkd[979]: br0: Could not set route: Network is unreachable
Jan 26 16:36:28 firebolt systemd-networkd[979]: br0: Failed
Jan 26 16:36:30 firebolt systemd-networkd[979]: br0: Lost carrier
Jan 26 16:36:31 firebolt systemd-networkd[979]: enp4s0: Gained carrier
Jan 26 16:36:31 firebolt systemd-networkd[979]: br0: Gained carrier
Jan 26 16:38:02 firebolt systemd-networkd[979]: rtnl: received neighbor for link '5' we don't know about, ignoring.
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: rtnl: received neighbor message with invalid family, ignoring.
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: rtnl: received neighbor message with invalid family, ignoring.
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0: rtnl: received neighbor message with invalid family, ignoring.
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: Link UP
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: Gained carrier
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0: Link UP
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: Link DOWN
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: Lost carrier
Jan 26 16:38:02 firebolt systemd-networkd[979]: virbr0-nic: Kernel removed an address we don't remember: fe80::5054:ff:fed9:7e26/64 (valid forever), ignoring.
Jan 26 16:39:28 firebolt systemd[1]: Stopping Network Service...
Jan 26 16:39:28 firebolt systemd[1]: systemd-networkd.service: Succeeded.
Jan 26 16:39:28 firebolt systemd[1]: Stopped Network Service.
Jan 26 16:39:28 firebolt systemd[1]: Starting Network Service...
Jan 26 16:39:28 firebolt systemd-networkd[1650]: br0: netdev ready
Jan 26 16:39:28 firebolt systemd-networkd[1650]: br0: Gained IPv6LL
Jan 26 16:39:28 firebolt systemd-networkd[1650]: Enumeration completed
Jan 26 16:39:28 firebolt systemd[1]: Started Network Service.
Jan 26 16:39:28 firebolt systemd-networkd[1650]: br0: netdev exists, using existing without changing its parameters
Jan 26 16:39:28 firebolt systemd-networkd[1650]: br0: IPv6 successfully enabled
the network should restart properly after a reboot liek in earlier
version of ubuntu 18.04 for example
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1860926/+subscriptions
More information about the foundations-bugs
mailing list