Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: dhcpcd, IPv6 & DAD



Hi

On 2014-07-29 20:16, Dave Tyson wrote:
I seem to be having a bit of bother getting a T60 laptop to get an
IPv6 address correctly using dhcpcd.

The basic setup I have is an ADSL router hardwired to a server
(current-ish NetBSD amd64) which gets an ipv6 feed via a HE tunnel.
The router hands out IPv4 addresses and the server uses rtadvd to hand
out IPv6 prefixes etc.

The laptop is running a recent version of current:

NetBSD t60.anduin.org.uk 6.99.47 NetBSD 6.99.47
(GENERIC.201407190440Z) #0: Sat Jul 19 06:45:26 UTC 2014
builds%b48.netbsd.org@localhost:/home/builds/ab/HEAD/i386/201407190440Z-obj/home/source/ab/HEAD/src/sys/arch/i386/compile/GENERIC
i386

The networking parts of rc.conf:

wpa_supplicant=YES      wpa_supplicant_flags="-B -i wpi0 -c
/etc/wpa_supplicant.conf"
dhcpcd=YES              dhcpcd_flags="-w"
ip6mode=host

and dhcpcd.conf is as supplied.

On startup dhcpcd seems to get both IPV4 and IPV6 addresses, but DAD
fires off twice and the resulting
IPv6 address is marked as a duplicate. What I cannot understand is why
this occurs and what I need to do to fix it...

rc.log:

Starting dhcpcd.
dhcpcd[151]: version 6.4.2 starting
dhcpcd[151]: wm0: adding address fe80::e26c:74d7:db55:bee7
dhcpcd[151]: wm0: waiting for carrier
dhcpcd[151]: wpi0: waiting for carrier
dhcpcd[151]: wpi0: carrier acquired
dhcpcd[151]: DUID 00:01:00:01:1b:6a:a0:37:00:13:02:7b:ca:44
dhcpcd[151]: wpi0: IAID 02:7b:ca:44
dhcpcd[151]: wpi0: soliciting a DHCP lease
dhcpcd[151]: wpi0: soliciting an IPv6 router
dhcpcd[151]: wpi0: Router Advertisement from fe80::1
dhcpcd[151]: wpi0: adding default route via fe80::1
dhcpcd[151]: wpi0: soliciting a DHCPv6 lease
dhcpcd[151]: wpi0: fe80::1 is unreachable, expiring it
dhcpcd[151]: wpi0: Router Advertisement from fe80::3e4a:92ff:fe77:bc6a
dhcpcd[151]: wpi0: adding address 2001:470:1f08:a8e:455e:1100:e823:ac03/64
dhcpcd[151]: wpi0: adding route to 2001:470:1f08:a8e::/64
dhcpcd[151]: wpi0: changing default route via fe80::3e4a:92ff:fe77:bc6a
dhcpcd[151]: wpi0: fe80::3e4a:92ff:fe77:bc6a is unreachable, expiring it dhcpcd[151]: wpi0: DAD detected 2001:470:1f08:a8e:455e:1100:e823:ac03/64 dhcpcd[151]: wpi0: deleting address 2001:470:1f08:a8e:455e:1100:e823:ac03/64 dhcpcd[151]: wpi0: adding address 2001:470:1f08:a8e:da29:27e0:601b:993/64
dhcpcd[151]: wpi0: offered 192.168.0.10 from 192.168.0.1
dhcpcd[151]: wpi0: changing default route via fe80::1
dhcpcd[151]: wpi0: fe80::1 is unreachable, expiring it
dhcpcd[151]: wpi0: changing default route via fe80::3e4a:92ff:fe77:bc6a
dhcpcd[151]: wpi0: leased 192.168.0.10 for 86400 seconds
dhcpcd[151]: wpi0: adding host route to 192.168.0.10 via 127.0.0.1
dhcpcd[151]: wpi0: adding route to 192.168.0.0/24
dhcpcd[151]: wpi0: adding default route via 192.168.0.1
dhcpcd[151]: forked to background, child pid 788

and in the message log:

Jul 29 19:11:13 t60 /netbsd: wpi0: DAD detected duplicate IPv6 address
2001:470:1f08:a8e:455e:1100:e823:ac03: NS in/out=1/1, NA in=0
Jul 29 19:11:13 t60 /netbsd: wpi0: DAD complete for
2001:470:1f08:a8e:455e:1100:e823:ac03 - duplicate found
Jul 29 19:11:13 t60 /netbsd: wpi0: manual intervention required
Jul 29 19:11:13 t60 /netbsd: wpi0: DAD detected duplicate IPv6 address
2001:470:1f08:a8e:da29:27e0:601b:993: NS in/out=1/1, NA in=0
Jul 29 19:11:13 t60 /netbsd: wpi0: DAD complete for
2001:470:1f08:a8e:da29:27e0:601b:993 - duplicate found
Jul 29 19:11:13 t60 /netbsd: wpi0: manual intervention required

Anyone got an idea of what to do?

dhcpcd is trying to configure an IPv6 AutoConf address from the given prefix. dhcpcd-6.4.2 defaults to using a more private stable address. It has 3 attempts to find one before bailing. This is what you are seeing. However, it's the kernel that reports the DAD, dhcpcd just listens to it. You could try changing the default to a hardware based address, like the kernel by changing "slaac private" to "slaac hwaddr" as described in dhcpcd.conf(5)
I'll be surprised if that fixes your issue though.

I would say something more sinister is afoot though because the kernel is also reporting that the routers assigning you the address are unreachable before DAD completes. This could be related and suggests a problem with your network card driver.

Sorry I can't help more.

Roy


Home | Main Index | Thread Index | Old Index