DHCP
DHCP is powered by CoreDHCP. CoreDHCP is an extensible DHCP client and server purely written in golang.
SPR maintains a fork with one additional plugin:
Tiny Subnets
This plugin will call into the core API to get DHCP client addresses and options to assign.
After receiving a DHCP request, it will query the API with the following parameters
type DHCPRequest struct {
	MAC        string
	Identifier string
	Name       string
	Iface      string
}
And the API will respond with IP, Router, DNS, and Lease time to construct a packet
type DHCPResponse struct {
	IP        string
	RouterIP  string
	DNSIP     string
	LeaseTime string
}