Fix setting prefix for IPv6 link-local addresss
authorPali Rohár <pali@kernel.org>
Fri, 7 Aug 2020 07:55:04 +0000 (09:55 +0200)
committerPali Rohár <pali@kernel.org>
Fri, 7 Aug 2020 07:55:04 +0000 (09:55 +0200)
commitaf30be0d252d0f38c40bff7178a00addecdd1bb1
treee8bc593aab7ca93c571f0d120fb1b4b2f7940573
parent045169401601639b9163e1df00f868a0a49131ce
Fix setting prefix for IPv6 link-local addresss

PPP IPV6CP protocol exchanges only IPv6 Interface Identifiers which are
used for generating IPv6 link-local addresses. As on PPP link cannot be
more hosts and IPv6 link-local addresses are designed for addressing a
single link, set route prefix for local and remote IPv6 link-local
addresses to /128 which means single IPv6 address.

This ensures that Linux kernel would not try to route other IPv6 link-local
addresses over PPP link.

Routable IPv6 prefix on PPP link is later configured either by ICMPv6
Router Advertisement packets or manually/statically. Routable local IPv6
address is then assigned by SLAAC, DHCPv6 or manual/static configuration.

So this change has no effect for routable IPv6 address or routable IPv6
prefix.

Note that pppd for IPv4 already sets netmask to 255.255.255.255, one single
IPv4 address.

Fixes: https://github.com/paulusmack/ppp/issues/121
Signed-off-by: Pali Rohár <pali@kernel.org>
pppd/sys-linux.c