Bug#815793: IPv6 code ignores unsolicited router advertisements

Marc Haber mh+debian-packages at zugschlus.de
Sat Jul 16 13:16:25 BST 2016


Hi Martin,

On Fri, Jul 15, 2016 at 09:04:59PM +0200, Marc Haber wrote:
> On Wed, Jul 06, 2016 at 08:57:43AM +0200, Martin Pitt wrote:
> > while we reverted the change in 229, we don't want to carry the
> > reversion forever. Also, some problems were fixed already in 230, like
> > [1]. I forwarded this upstream to
> > https://github.com/systemd/systemd/issues/3663, and will now play
> > relay :-)
> > 
> > If this is hardware specific, can you please try this with 230 with
> > the patch reverted? I build packages for amd64 here:
> > https://people.debian.org/~mpitt/tmp/systemd-userspace-ndisc/
> > (there's also a Packages.gz so this can be used as an apt deb line)
> > There were a lot of changes to the RA handling in 230.
> 
> Unfortunately the system I have been seeing this on is a Banana Pi,
> thus armhf, and I cannot run your test packages on this system. This
> bug does not, however, show itself on a reference system running amd64
> with 230-5pitti1.

I regret to inform you that we have a heisenbug here. When
reconfiguring and restarting radvd, systemd sometimes decides to act
on the new announcement, and sometimes doesn't.

For example, after receiving this announcement:

13:40:23.075889 IP6 (flowlabel 0x4717d, hlim 255, next-header ICMPv6 (58) payload length: 240) fe80::1 > ff02::1: [icmp6 sum ok] ICMP6,
        hop limit 64, Flags [none], pref medium, router lifetime 1800s, reachable time 0s, retrans time 0s
          prefix info option (3), length 32 (4): 2a01:db8:0::3282::/64, Flags [onlink, auto], valid time 86400s, pref. time 14400s
          route info option (24), length 24 (3):  ::/0, pref=high, lifetime=1800s
          route info option (24), length 24 (3):  2000::/3, pref=high, lifetime=1800s
          route info option (24), length 24 (3):  2a01:db8:0::3280::/60, pref=high, lifetime=1800s
          route info option (24), length 24 (3):  2a01:db8:0::32b0::/60, pref=high, lifetime=1800s
          rdnss option (25), length 40 (5):  lifetime 600s, addr: 2a01:db8:0::3281::35:100 addr: 2a01:db8:0::328e::35:100
          dnssl option (31), length 48 (6):  lifetime 600s, domain(s): zugschlus.de. ka51.zugschlus.de.
          source link-address option (1), length 8 (1): 7e:79:61:31:55:28

systemd didn't configure an SLAAC IPv6 address on the interface. I
guess that this depends on whether and how many other IP addresses are
on the interface. It seems to work more reliably if the interface
doesn't already have an address from this prefix. If this is the case,
it is another proof of the gross misunderstanding of IPv6 that the
person writing this piece of the code has.

Greetings
Marc

-- 
-----------------------------------------------------------------------------
Marc Haber         | "I don't trust Computers. They | Mailadresse im Header
Leimen, Germany    |  lose things."    Winona Ryder | Fon: *49 6224 1600402
Nordisch by Nature |  How to make an American Quilt | Fax: *49 6224 1600421




More information about the Pkg-systemd-maintainers mailing list