-
Notifications
You must be signed in to change notification settings - Fork 12
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
Implement DHCPv6 Server Identifier Generation #46
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If DUID-EN identifier not specified, will randomly generate a 6-byte-long identifier, like Kea
Some tests I added that involve adding and deleting local files (/var/lib/dora/server_id), which cannot pass the workflow test. Do I need to modify them? |
Great! I'll take a more thorough look tomorrow but yes I would like to get the tests to pass in the workflow. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks so much for working on this!
OK, I will modify them(a lot…) However kind of busy in other things in recent few days🤪 |
Thank you so much for these reviews in detail🙏 |
No rush! Thanks again for picking this up |
|
Maybe.. LGTM? |
LGTM. I may push a few small changes on top of the branch before merging if that's OK. I want to thank you again for your persistence in working on this. When the v6 changes in dhcproto we can make the update here also. I can take care of that if you want to work on something more exciting, have you thought about what to look at next for v6? |
Yeah. If v6 Htype is updated in dhcproto, there is also a part that needs to be modified here. I will add TODO tags in the corresponding places. |
I pushed some small changes, thanks again! |
Hi, I have been working on a plan to enhance DHCPv6 support of this project for a long time. The generation of Server Identifier is the first step of this plan, and also the very first step of a DHCPv6 serving process.
I got some inspiration from kea, a high-performance DHCP server engine, and I implemented the support of 4 types of server identifier: LLT, LL, EN and DUID. Some major points of my codes are:
(1) The definition of certain configuration of server identifier. These can be found in various config yaml files I added.
(2) The fix of finding the local link layer address if we never define the interfaces in config.
(3) The implementation of reusing the DUID generated at the first time DHCPv6 is used. The DUID will only be reused if the configuration has not changed since the last time.
(4) Some tests.