Client link-local address and interface not available in commit hook
name: Client's link-local address and interface should be available in commit hook about: Add either an option to get both the link local address and interface (in the usual fe80::abcd%IFACE format) or to obtain them separately.
Some initial questions
- Are you sure your feature is not already implemented in the latest ISC DHCP version? Pretty sure. I went over all the relevant code and even tried implementing hooks that look at the packet content but didn't see an option available.
- Are you sure your feature is not already implemented in the latest Kea version? Perhaps it's a good time to consider migration? It probably is implemented in Kea, but there's already the better part of an implementation for ISC DHCP written so I think it could be an easy addition to ISC DHCP, and it would overall be a lot less work for anyone not wanting to migrate just yet.
- Are you sure what you would like to do is not possible using some other mechanisms? Not directly, no. It is possible by writing a commit hook that executes a neighbour discovery lookup to obtain the link-local address of the client based on the Mac address of the client, but that seems like an incorrect solution.
- Have you discussed your idea on dhcp-users or dhcp-workers mailing lists? No.
Is your feature request related to a problem? Please describe.
A problem I ran into recently on a popular open source router distribution (OPNsense) is that delegating prefixes to subrouters was broken. I spent some time looking into it and came up with a solution, but I think it is less than ideal. It would be better to simply directly have access to the client's link-local address/interface so that routes can be added directly in an on commit hook.
Describe the solution you'd like
I think integrating the last five changes here would be along the lines of what I'd go for: https://github.com/Oryon/isc-dhcp/commits/mpalmer/client-address-data-expression
I don't agree with all the specifics of the patches there and would probably present it as a single string to the commit hook, but it's roughly what I'd like.
Describe alternatives you've considered
I've considered just migrating to Kea, but as this seems like a relatively small change to improve commit hooks for delegating prefixes it seems like the better option. If ISC DHCP is being deprecated or development halted then migration would be far more urgent.
Hopefully this request is fairly clear and the GitHub reference for the Oryon/mpalmer patches are also clear.
Funding its development ISC DHCP is run by ISC, which is a small non-profit organization without any government funding or any permanent sponsorship organizations. Are you able and willing to participate financially in the development costs?
Not in my current role, no.
Participating in development Are you willing to participate in the feature development? ISC team always tries to make a feature as generic as possible, so it can be used in wide variety of situations. That means the proposed solution may be a bit different that you initially thought. Are you willing to take part in the design discussions? Are you willing to test an unreleased engineering code?
I am willing but my time is quite limited. I'm not set on any specific solution to this problem.
Contacting you How can ISC reach you to discuss this matter further? If you do not specify any means such as e-mail, jabber id or a telephone, we may send you a message on github with questions when we have them.
I can keep an eye on this issue but if you need to reach out or send me a message that's also fine.