-
Notifications
You must be signed in to change notification settings - Fork 0
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
Find an implementation of DHCP that could be used in Renode #2
Comments
@PiotrZierhoffer |
We have encountered difficulties with the sharp-dhcp-server-lib library, it seems that it is either incomplete or lacks a feature. We cannot find how this server is supposed to react to given packets. But because the mechanisms of the DHCP protocol are complicated and would take a while we are looking for other libraries that could replace this one. We found one that looks promising accept the fact we haven't managed to compile it on Linux: It builds without a problem on Windows, the error when building on Linux: $ dotnet build
Microsoft (R) Build Engine version 16.9.0+57a23d249 for .NET
Copyright (C) Microsoft Corporation. All rights reserved.
/home/john/Documents/Universitas/Semestris6/Projekt/DHCPServer/DHCPServer/Setup/Setup.vdproj(1,1): error MSB4025: The project file could not be loaded. Data at the root level is invalid. Line 1, position 1.
Build FAILED.
/home/john/Documents/Universitas/Semestris6/Projekt/DHCPServer/DHCPServer/Setup/Setup.vdproj(1,1): error MSB4025: The project file could not be loaded. Data at the root level is invalid. Line 1, position 1.
0 Warning(s)
1 Error(s)
Time Elapsed 00:00:00.95 It seems like the issue is with how the project files are set up. Given that the project is on the Given that |
Regarding the first lib - there's a sample showing exactly how to use it https://github.com/dotnetprojects/sharp-dhcp-server-lib/blob/master/SharpDHCPServer_Sample/Program.cs DHCPSharp is not to be built by dotnet, but by mono. You can call DHCPSharp relies on SQLite - this is not something that I'd like to have. Having a data store in memory would be way better. So the first one is more compelling in that it does not use SQLite. It looks kinda shabby, though (e.g. the nonexistent readme). I'd it a try. P.S. Once again, ping me over email to get my attention, these notifications sometimes get lost |
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).
The text was updated successfully, but these errors were encountered: