Public bug reported: [Description]
When attaching multiple IPs on secondary interface the routing policy rules do not apply for all IPs. The rules that are applied after restarting networkd are random. The issue has been reported and addressed upstream. [Test Case] Attach multiple IPs to secondary interface, config file: $ cat /etc/systemd/network/ens8.network [Match] Name=ens8 [Network] Address=172.31.28.195/20 Address=172.31.24.151/20 Address=172.31.24.152/20 Address=172.31.24.153/20 [Route] Destination=0.0.0.0/0 Gateway=172.31.16.1 Table=1000 [Route] Destination=172.31.24.153 Gateway=0.0.0.0 Scope=link Table=1000 [Route] Destination=172.31.28.195 Gateway=0.0.0.0 Scope=link Table=1000 [Route] Destination=172.31.24.151 Gateway=0.0.0.0 Scope=link Table=1000 [Route] Destination=172.31.24.152 Gateway=0.0.0.0 Scope=link Table=1000 [RoutingPolicyRule] From=172.31.24.153 Table=1000 [RoutingPolicyRule] From=172.31.28.195 Table=1000 [RoutingPolicyRule] From=172.31.24.152 Table=1000 [RoutingPolicyRule] From=172.31.24.151 Table=1000 $ ip rule show 0: from all lookup local 0: from 172.31.24.151 lookup 1000 32766: from all lookup main 32767: from all lookup default - restart networkd $ sudo systemctl restart systemd-networkd $ ip rule show 0: from all lookup local 0: from 172.31.24.151 lookup 1000 0: from 172.31.24.153 lookup 1000 0: from 172.31.28.195 lookup 1000 32766: from all lookup main 32767: from all lookup default - restart again $ sudo systemctl restart systemd-networkd $ ip rule show 0: from all lookup local 0: from 172.31.24.151 lookup 1000 0: from 172.31.24.152 lookup 1000 32766: from all lookup main 32767: from all lookup default The behaviour is random [Other] Affects Disco and Bionic (probably Cosmic as well, but haven't tested it yet). Upstream bug : https://github.com/systemd/systemd/issues/11280 Upstream fix : https://github.com/systemd/systemd/pull/11795/commits $ lsb_release -rd Description: Ubuntu Disco Dingo (development branch) Release: 19.04 Systemd version : systemd: Installed: 240-6ubuntu1 Candidate: 240-6ubuntu1 Version table: *** 240-6ubuntu1 500 500 http://gb.archive.ubuntu.com/ubuntu disco/main amd64 Packages 100 /var/lib/dpkg/status ** Affects: systemd (Ubuntu) Importance: Undecided Status: New -- 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/1818282 Title: systemd-networkd - RoutingPolicyRule does not apply correctly Status in systemd package in Ubuntu: New Bug description: [Description] When attaching multiple IPs on secondary interface the routing policy rules do not apply for all IPs. The rules that are applied after restarting networkd are random. The issue has been reported and addressed upstream. [Test Case] Attach multiple IPs to secondary interface, config file: $ cat /etc/systemd/network/ens8.network [Match] Name=ens8 [Network] Address=172.31.28.195/20 Address=172.31.24.151/20 Address=172.31.24.152/20 Address=172.31.24.153/20 [Route] Destination=0.0.0.0/0 Gateway=172.31.16.1 Table=1000 [Route] Destination=172.31.24.153 Gateway=0.0.0.0 Scope=link Table=1000 [Route] Destination=172.31.28.195 Gateway=0.0.0.0 Scope=link Table=1000 [Route] Destination=172.31.24.151 Gateway=0.0.0.0 Scope=link Table=1000 [Route] Destination=172.31.24.152 Gateway=0.0.0.0 Scope=link Table=1000 [RoutingPolicyRule] From=172.31.24.153 Table=1000 [RoutingPolicyRule] From=172.31.28.195 Table=1000 [RoutingPolicyRule] From=172.31.24.152 Table=1000 [RoutingPolicyRule] From=172.31.24.151 Table=1000 $ ip rule show 0: from all lookup local 0: from 172.31.24.151 lookup 1000 32766: from all lookup main 32767: from all lookup default - restart networkd $ sudo systemctl restart systemd-networkd $ ip rule show 0: from all lookup local 0: from 172.31.24.151 lookup 1000 0: from 172.31.24.153 lookup 1000 0: from 172.31.28.195 lookup 1000 32766: from all lookup main 32767: from all lookup default - restart again $ sudo systemctl restart systemd-networkd $ ip rule show 0: from all lookup local 0: from 172.31.24.151 lookup 1000 0: from 172.31.24.152 lookup 1000 32766: from all lookup main 32767: from all lookup default The behaviour is random [Other] Affects Disco and Bionic (probably Cosmic as well, but haven't tested it yet). Upstream bug : https://github.com/systemd/systemd/issues/11280 Upstream fix : https://github.com/systemd/systemd/pull/11795/commits $ lsb_release -rd Description: Ubuntu Disco Dingo (development branch) Release: 19.04 Systemd version : systemd: Installed: 240-6ubuntu1 Candidate: 240-6ubuntu1 Version table: *** 240-6ubuntu1 500 500 http://gb.archive.ubuntu.com/ubuntu disco/main amd64 Packages 100 /var/lib/dpkg/status To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1818282/+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