Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wicked: improve reliability of acquiring a DHCPv6 lease #3166

Conversation

markusboehme
Copy link
Member

Issue number: #3143 (this is the second piece for #3159)

Description of changes:

This PR contains changes to improve the reliability and efficiency of getting a DHCPv6 lease for an interface via Wicked. The three patches are an upstream backport, a downstream fix (to be upstreamed), and a downstream modification (not to be upstreamed). For details, please see the respective commits.

Testing done: Most extensively by @zmrow in #3159 (thanks!)

Terms of contribution:

By submitting this pull request, I agree that this contribution is dual-licensed under the terms of both the Apache License, version 2.0, and the MIT license.

Wicked may miss that the kernel received a Router Advertisement while
waiting for a device to become ready for DHCPv6. It will then wait
indefinitely and never enter the FSM.

Cherry-pick the upstream fix to unconditionally poll for link updates
rather than only relying on netlink updates being pushed to Wicked in
non-dry-run mode.

Signed-off-by: Markus Boehme <[email protected]>
This fixes an occasional hang during DHCPv6 solicitation when the
randomized initial soliciation delay happened to be exactly 0 ms.

The patch can be upstreamed.

Signed-off-by: Markus Boehme <[email protected]>
Reduce the maximum initial solicitation delay to 100 ms from the
spec-mandated value of 1000 ms to reduce the average and variance in
time to node readiness.

This is not strictly compliant with RFC 3315 (treating the initial delay
as a MUST), and only tolerated by its successor RFC 8415 (changing it to
a SHOULD). This change therefore is not a good candidate for upstreaming.

Signed-off-by: Markus Boehme <[email protected]>
@markusboehme markusboehme requested a review from zmrow June 2, 2023 14:53
Copy link
Contributor

@zmrow zmrow left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! 🥳

@markusboehme markusboehme merged commit 63a5005 into bottlerocket-os:develop Jun 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants