dhcpcd-discuss

Re: Router using non-/64 prefix delegation (ia_pd) needs a normal address (ia_na) to route packets.

Roy Marples

Wed Jul 02 10:47:27 2014

On 02/07/2014 6:08, Robert White wrote:
It _almost_ works....

Comcast, it seems, honors the multiple requests in one packet, but it
replies with one packet per IA, each with the same transaction ID etc.

I believe that the second and subsequent packets with the same xid are
being filtered or ignored. Whichever IA request comes first in the
config file is the one honored so I'm guessing the response packets
are being generated stepwise by the server instead of cumulatively.

It looks like you "clear the status" (and free the data structure)
after a successful reply is parsed. Some sort of keep/more flag in the
ifo->ia[] might be a work around. You'd hang on to the status buffer
and until all ia(s) were satisfied or until it was time to make a new
request. The flag would then also act as a de-dupe for repeated
replies for the same iaid in the same transaction.

A three-packet tcpdump is attached.

Yes, basically we accept the first lease with *some* valid addresses which we asked for. So Comcast is essentially enforcing the session (state) per IA which I don't really want to support as that doesn't easily fit into the design of dhcpcd. We can't easily merge it in, because the replies came from different servers and if they add the unicast option to each session then it just won't work.
There are also other problems with this.

Maybe it's worth asking them if they plan to support the up and coming standard?
Here's a link for it again:
https://datatracker.ietf.org/doc/draft-ietf-dhc-dhcpv6-stateful-issues/

I think the easiest solution at this point (if they say no to the above of course) is add more switches to dhcpcd so you can do this
dhcpcd --noprefixdelegation
dhcpcd --prefixdelegation

It's not pretty, and two daemons is a pretty big hammer, but it would allow to manage IA in different sessions. dhcpcd --noprefixdelegation works as dhcpcd currently does, just won't process any IA_PD options. dhcpcd --prefixdelegation will only process IA_PD options and will store state in different files.

Rob "loves a good hole in a standard" White.

Heh

Follow-Ups:
Re: Router using non-/64 prefix delegation (ia_pd) needs a normal address (ia_na) to route packets.Roy Marples
References:
Router using non-/64 prefix delegation (ia_pd) needs a normal address (ia_na) to route packets.Robert White
Re: Router using non-/64 prefix delegation (ia_pd) needs a normal address (ia_na) to route packets.Roy Marples
Re: Router using non-/64 prefix delegation (ia_pd) needs a normal address (ia_na) to route packets.Roy Marples
Re: Router using non-/64 prefix delegation (ia_pd) needs a normal address (ia_na) to route packets.Roy Marples
Re: Router using non-/64 prefix delegation (ia_pd) needs a normal address (ia_na) to route packets.Robert White
Archive administrator: postmaster@marples.name