author: 9ferno <firstname.lastname@example.org>
date: Thu Sep 2 15:27:49 EDT 2021
dhcpd to-do list
--- /dev/null Mon Oct 18 12:05:45 2021
+++ b/appl/cmd/ip/dhcpd.todo Thu Sep 2 15:27:49 2021
@@ -0,0 +1,51 @@
+dhcp is implemented and lightly tested. bootp is not yet implemented. enough room for improvement.
+ip/dhcpd is a dhcpd (it also speaks bootp). see the manual page for more information.
+make sure you have $ROOT set. now run "mk install" to compile and
+install the files.
+when building from within inferno, insert SYSHOST=Inferno and ROOT=
+in the mk invocations to override the values in the mkconfig.
+# latest version
+the latest version can be found at:
+# licence & author
+this code was started as an extension to inferno's ip/bootpd, but has
+been rewritten completely.
+all files are in the public domain. this code has been written by
+mechiel lukkien, reachable at email@example.com or firstname.lastname@example.org.
+- figure out the local ip address from the argument ip address.
+- make Dhcpmsg less ugly
+- check that we are serverid from request?
+- return multiple dns servers when configured
+- if a lease time is requested, and it's lower than the server-assigned (and reasonable), use the clients lease
+- honour max message size in request?
+- implement bootp requests
+- dhcp message option overload, for parsing
+- respond with unicast in same cases (unless broadcast flag is set)
+- broadcast flag must be set for some cases when sending to giaddr
+- if giaddr is set in request, allocate address from that subnet? or at least document that we're not doing that.
+- test with various dhcp/bootp clients
+- probe to-be-handed-out addresses to verify that they really are free?
+- make more like plan 9's dhcpd? e.g. dhcp option names.