On Tue, 08 Nov 2022 23:56:47 -0500 Wilfried Teiken <wtei...@teiken.org> wrote:
> Package: dhcpcd5
> Version: 7.1.0-2
> Severity: normal
> Tags: ipv6 patch
>
> Dear Maintainer,
>
> *** Reporter, please consider answering these questions, where appropriate ***
>
>    * What led up to the situation?
> Set up multiple LANs with prefix delegation from WAN using ia_pd with an 
> explicit list of interaces to delegate to.
>    * What exactly did you do (or not do) that was effective (or
>      ineffective)?
> Initial dhcp startup works fine, prefixes get delegated as expected.
> When the WAN link is lost the delegated addresses are removed as expected.
> After the link recovers the delegation does not work properly.
>    * What was the outcome of this action?
> Right after link restoration the first LAN interface gets an address from the 
> prefix assigned. With each renew another interface get an address assigned.
>    * What outcome did you expect instead?
> All interfaces should get a delegated address assigned immediately.
>
>
> Root cause: In dhcp6_delegate_prefix is a loop over all interfaces in the 
> context. As the delegated prefixes are assigned the interface order is 
> changing (e.g., due to DAD being executed for the newly assigned prefix which 
> changes interface priority). This causes the loop to skip other LAN 
> interfaces.
>
> Solution that worked for me: Replace the loop with a "_SAFE" variant. This 
> will likely process interfaces twice but this has no negative side effects.
>
> The binary is modified on the system as I have the patched binary running 
> successfully.

Forwarded upstream:

https://github.com/NetworkConfiguration/dhcpcd/issues/154

Please note that your patch is against 7.1.0, while upstream is
already up to 9.4.1, with 9.4.2 release pending.

You might wanna test the dhcpcd version that is in Testing, to see if
it solves your issue.

Martin-Éric

Reply via email to