[OpenWrt-Devel] DHCPv6 flash renumbering patches with HE tunnel breaks

Arjen de Korte arjen+openwrt at de-korte.org
Thu Mar 26 08:49:50 EDT 2015

Citeren Steven Barth <cyrus at openwrt.org>:

> Hello Arjen,
> most likely, your DHCPv6 client implementation is faulty and you  
> should probably file a bug for more than one reason.

In that case, I have a lot of bug reports to file, because none of the  
DHCPv6 clients I tried were happy with preferred lifetimes of 1 second  
on their leases (which includes Windows 7, 8.1 and openSUSE 13.2).  
Removing lines

813	if (!a->accept_reconf && iface->managed < RELAYD_MANAGED_NO_AFLAG &&
814			addrs[i].prefix == 64)
815		n.preferred = htonl(1);

and all were good again. I'm still looking for why setting a preferred  
lifetime of 1 second is not going to render the IPv6 address that is  
provided in the reply by odhcpd useless.

> If the DHCPv6 server sends values for T1 and / or T2 which are valid  
> the client must honor them and not try to be "smart" about lifetimes  
> of addresses.

I'm not sure if preferred lifetime < T1 and/or T2 is expected behavior  
of the DHCPv6 server. One second after receiving the address, clients  
can't use the address for new connections, but also can't renew (until  
T1) or rebind (until T2). And that's precisely what I'm seeing here.  
Note that the continuous renewals were only with the first patch  
applied, for the most recent version of odhcpd the clients will just  
give up on the DHCPv6 address after one second and use SLAAC instead.  
But this is not what I want (and I can't switch off SLAAC either,  
since I have also clients to support which don't do DHCPv6).

> Besides you also get addresses with higher values for preferred  
> lifetime using RAs so you always have usable IPv6 addresses, so if  
> your network-manager / OS behaves sanely you shouldn't have any  
> issues.

They don't have an issue with IPv6 connectivity, its the source  
address that is used *I* have a problem with.

> A work-around for this is setting:
> option ra_management 0
> in the lan-section of /etc/config/dhcp which will cause most clients  
> to not use DHCPv6 and rely on RAs only.

This is not an option, as the whole purpose of using DHCPv6 for  
address configuration is to give clients a fixed IPv6 address. This  
has worked correctly since Barrier Breaker was released, I see no  
reason why it no longer should.
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org

More information about the openwrt-devel mailing list