systemd-networkd doesn't process IPv6 RA properly
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
systemd (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Bionic |
Won't Fix
|
Undecided
|
Unassigned |
Bug Description
The gateways/firewalls in our DC are highly available and when there is a failover their IPv6 VIP (fe80::1) moves from the master to the backup one.
We found that only our Bionic VMs behind those gateways had issues after a failover. Those Bionic VMs were all running systemd-networkd (from netplan) and before the failover they had:
$ ip -6 route
...
default via fe80::1 dev eth0 proto ra metric 1024 pref medium
But after a failover:
$ ip -6 route
...
default proto ra metric 1024
nexthop via fe80::1 dev eth0 weight 1
nexthop via fe80::210:
And after another failover:
$ ip -6 route
...
default proto ra metric 1024
nexthop via fe80::1 dev eth0 weight 1
nexthop via fe80::210:
nexthop via fe80::210:
This is problematic as those then use fe80::210:
$ ip -6 route get ::
:: from :: via fe80::210:
We concluded it was a systemd-networkd bug after checking that the following combinations were NOT affected:
1) Xenial+4.4 kernel
2) Xenial+4.15 kernel
3) Bionic+ifupdown
Additional information:
$ apt-cache policy systemd
systemd:
Installed: 237-3ubuntu10.3
Candidate: 237-3ubuntu10.3
Version table:
*** 237-3ubuntu10.3 500
500 http://
100 /var/lib/
237-3ubuntu10 500
500 http://
$ lsb_release -rd
Description: Ubuntu 18.04.1 LTS
Release: 18.04
ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: systemd 237-3ubuntu10.3
ProcVersionSign
Uname: Linux 4.15.0-38-generic x86_64
ApportVersion: 2.20.9-0ubuntu7.4
Architecture: amd64
Date: Wed Oct 31 08:47:28 2018
Lspci: Error: [Errno 2] No such file or directory: 'lspci': 'lspci'
Lsusb: Error: [Errno 2] No such file or directory: 'lsusb': 'lsusb'
MachineType: QEMU Standard PC (i440FX + PIIX, 1996)
ProcEnviron:
TERM=xterm-
PATH=(custom, no user)
LANG=en_US.UTF-8
SHELL=/bin/bash
ProcKernelCmdLine: BOOT_IMAGE=
SourcePackage: systemd
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 04/01/2014
dmi.bios.vendor: SeaBIOS
dmi.bios.version: Ubuntu-
dmi.chassis.type: 1
dmi.chassis.vendor: QEMU
dmi.chassis.
dmi.modalias: dmi:bvnSeaBIOS:
dmi.product.name: Standard PC (i440FX + PIIX, 1996)
dmi.product.
dmi.sys.vendor: QEMU
Changed in systemd (Ubuntu): | |
status: | Invalid → New |
systemd from Cosmic is not affected by this bug:
# apt-cache policy systemd archive. ubuntu. com/ubuntu cosmic-updates/main amd64 Packages archive. ubuntu. com/ubuntu cosmic- security/ main amd64 Packages dpkg/status archive. ubuntu. com/ubuntu cosmic/main amd64 Packages
systemd:
Installed: 239-7ubuntu10.3
Candidate: 239-7ubuntu10.3
Version table:
*** 239-7ubuntu10.3 500
500 http://
500 http://
100 /var/lib/
239-7ubuntu10 500
500 http://