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@lab:~$ sudo nano /etc/netplan/99_config.yaml labuser@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@lab:~$ sudo shutdown -r labuser@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@lab:~$ sudo net apply labuser@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@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@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@lab:~$ sudo nano /etc/apt/sources.list labuser@lab:~$ sudo cat /etc/apt/sources.list | grep proposed deb http://archive.ubuntu.com/ubuntu/ focal-proposed restricted main multiverse universe labuser@lab:~$ sudo apt update labuser@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@lab:~$ sudo shutdown -r labuser@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@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 Touch seeded packages, 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@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@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@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@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@test-e:~$ sudo ip l set dev ens3 master br0 up ubuntu@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@test-e:~$ sudo ip l set dev ens3 nomaster the bridge no longer has its address after losing carrier: ubuntu@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 -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp