Implements the DHCP server protocol. DHCP (Dynamic Host Configuration Protocol), described in RFC 2131, provides configuration parameters to Internet hosts. Requires UDP.
See also: DHCPClient, DHCPMessage
The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Name | Type | Default value | Description |
---|---|---|---|
interfaceTableModule | string |
The path to the InterfaceTable module |
|
interface | string | "" |
interface to listen on; can be left empty if there is only one non-loopback interface |
numReservedAddresses | int |
number of addresses to skip at the start of the network's address range |
|
maxNumClients | int |
maximum number of clients (IPs) allowed to be leased |
|
gateway | string | "" |
gateway to assign, if empty use the interface address |
leaseTime | int |
lease time in seconds |
|
startTime | double | 0s |
application start time |
Name | Value | Description |
---|---|---|
display | i=block/app2 |
Name | Direction | Size | Description |
---|---|---|---|
udpIn | input | ||
udpOut | output |
// // Implements the DHCP server protocol. DHCP (Dynamic Host Configuration Protocol), // described in RFC 2131, provides configuration parameters to Internet hosts. // Requires UDP. // // @see DHCPClient, DHCPMessage // simple DHCPServer like IUDPApp { parameters: string interfaceTableModule; // The path to the InterfaceTable module string interface = default(""); // interface to listen on; can be left empty if there is only one non-loopback interface int numReservedAddresses; // number of addresses to skip at the start of the network's address range int maxNumClients; // maximum number of clients (IPs) allowed to be leased string gateway = default(""); // gateway to assign, if empty use the interface address int leaseTime @unit(s); // lease time in seconds double startTime @unit(s) = default(0s); // application start time @display("i=block/app2"); gates: input udpIn @labels(UDPControlInfo/up); output udpOut @labels(UDPControlInfo/down); }