To implement the DHCP support, we need the to have the DHCP server.
We can
a) implement it ourselves
b) find an implementation and use it
Both options are fine. Our own implementation has to be simple though, and I'm not very familiar with the protocol itself to judge how much work it would be.
External library has to have a permissive license (Apache, MIT etc).
It needs to compile well on Mono and .NET Framework and should not rely on external software.
It should also be configurable from code, not config files.
Please note all candidates you're investigating in this issue (along with the decision and its justification).