[Pkg-utopia-maintainers] Bug#661885: network-manager: Should not take IPv6 prefix length from DHCPv6 client

Arne Nordmark nordmark at mech.kth.se
Fri Mar 2 09:11:01 UTC 2012

Package: network-manager
Version: 0.8.1-6+squeeze1
Severity: normal
Tags: ipv6

On my IPv6 network with prefix length 112, network manager sets the IPv6
address on the interface with prefix length 64:

nordmark at ano7:~$ ip -6 addr
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP
qlen 1000
    inet6 2001:6b0:1:1e90::40:34/64 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::92e6:baff:fe52:723c/64 scope link
       valid_lft forever preferred_lft forever

nordmark at ano7:~$ ip -6 route
2001:6b0:1:1e90::40:0/112 dev eth0  proto kernel  metric 256  expires 86242sec
mtu 1500 advmss 1440 hoplimit 0
2001:6b0:1:1e90::/64 dev eth0  proto kernel  metric 256  mtu 1500 advmss 1440
hoplimit 0
fe80::/64 dev wlan0  proto kernel  metric 256  mtu 1500 advmss 1440 hoplimit 0
fe80::/64 dev eth0  proto kernel  metric 256  mtu 1500 advmss 1440 hoplimit 0
default via fe80::92e6:baff:fe68:ce8f dev eth0  proto kernel  metric 1024  mtu
1500 advmss 1440 hoplimit 64

Note the correct route with prefixlength 112 inserted by the kernel (from
listening to RA), and the wrong route with prefix length 64 caused by
NetworkManager when it set the address.  All addresses that share the 64 bit
prefix but not the 112 bit prefix has become unreachable.

In fact DHCPv6 when giving out addresses does not deal with prefix lengths at
all, and thus the DHCPv6 client has no idea what the prefix lenth should be.
The ISC DHCPv6 client does in fact return a prefix length to Network Manager,
but it is hard coded to always be 64, and when Network Manager trusts this
information, this bug appears.

In Network Manager, one could always set the address with prefix length 128,
since the correct route with be inserted by the kernel anyway.  I tried
modifying the ISC DHCPv6 client to always return 128 as the prefix length, and
then things work as expected. Alternatively, since Network Manager in fact
listens to RAs, it already has the correct prefix length, and could use that.
Using the DHCPv6 client for the prefix length information is the wrong thing to
do, anyway.


-- System Information:
Debian Release: 6.0.4
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.32-5-686 (SMP w/2 CPU cores)
Locale: LANG=sv_SE.UTF-8, LC_CTYPE=sv_SE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages network-manager depends on:
ii  adduser             3.112+nmu2           add and remove users and groups
ii  dbus                1.2.24-4+squeeze1    simple interprocess messaging syst
ii  isc-dhcp-client     4.1.1-P1-15+squeeze3 ISC DHCP client
ii  libc6               2.11.3-3             Embedded GNU C Library: Shared lib
ii  libdbus-1-3         1.2.24-4+squeeze1    simple interprocess messaging syst
ii  libdbus-glib-1-2    0.88-2.1             simple interprocess messaging syst
ii  libgcrypt11         1.4.5-2              LGPL Crypto library - runtime libr
ii  libglib2.0-0        2.24.2-1             The GLib library of C routines
ii  libgnutls26         2.8.6-1+squeeze1     the GNU TLS library - runtime libr
ii  libgudev-1.0-0      164-3                GObject-based wrapper library for 
ii  libnl1              1.1-6                library for dealing with netlink s
ii  libnm-glib2         0.8.1-6+squeeze1     network management framework (GLib
ii  libnm-util1         0.8.1-6+squeeze1     network management framework (shar
ii  libpolkit-gobject-1 0.96-4+squeeze1      PolicyKit Authorization API
ii  libuuid1            2.17.2-9             Universally Unique ID library
ii  lsb-base            3.2-23.2squeeze1     Linux Standard Base 3.2 init scrip
ii  udev                164-3                /dev/ and hotplug management daemo
ii  wpasupplicant       0.6.10-2.1           client support for WPA and WPA2 (I

Versions of packages network-manager recommends:
ii  dnsmas 2.55-2+b1                         A small caching DNS proxy and DHCP
ii  iptabl 1.4.8-3                           administration tools for packet fi
ii  modemm 0.4+git.20100624t180933.6e79d15-2 D-Bus service for managing modems
ii  policy 0.96-4+squeeze1                   framework for managing administrat
ii  ppp    2.4.5-4                           Point-to-Point Protocol (PPP) - da

Versions of packages network-manager suggests:
ii  avahi-autoipd          0.6.27-2+squeeze1 Avahi IPv4LL network address confi

-- Configuration Files:
/etc/NetworkManager/NetworkManager.conf changed:

-- no debconf information

More information about the Pkg-utopia-maintainers mailing list