DHCP server file syntax for db_file database
The file syntax for the db_file database has the following properties.
Note:
- Time Units (time_units) shown in the following table are optional and represent a modifier to the actual time. The default time unit is minutes. Valid values are seconds (1), minutes (60), hours (3600), days (86400), weeks (604800), months (2392000), and years (31536000). The number shown in parentheses is a multiplier applied to the specified value n to express the value in seconds.
- Items that are specified in one container can be overridden inside a subcontainer. For example, you could globally define BOOTP clients, but within a certain subnet allow BOOTP clients by specifying the supportBootp keyword in both containers.
- The client, class, and vendor containers allow for regular expression
support. For class and vendor, a quoted string with the first character
after the quote being an exclamation point (!) indicates that the
rest of the string should be treated as a regular expression. The
client container allows for regular expressions on both the hwtype
and the hwaddr fields. A single string is used to represent both fields
with the following format:
If decimal_number is zero, then data is an ASCII string. If any other number, data is hex digits.decimal_number-data
Keyword | Form | Subcontainers | Default Value | Meaning |
---|---|---|---|---|
subnet | subnet default | Yes | None | Specifies a subnet without an associated range. This subnet is used by the server only when responding to a client INFORM/REQUEST packet from the client and the client's address does not have another matching subnet container. |
subnet | subnet subnet id netmask | Yes | None | Specifies a subnet and a pool of addresses. All addresses are assumed to be in the pool unless a range is specified on the line or addresses are modified later in the container by a range or exclude statement. The optional range is a pair of IP addresses in dotted quad format separated by a dash. An optional label and priority can be specified. These are used by virtual subnets to identify and order the subnets in the virtual subnet. The label and priority are separated by a colon. These containers are only allowed at the global or database container level. |
subnet | subnet subnet id netmask range | Yes | None | Specifies a subnet and a pool of addresses. All addresses are assumed to be in the pool unless a range is specified on the line or addresses are modified later in the container by a range or exclude statement. The optional range is a pair of IP addresses in dotted quad format separated by a dash. An optional label and priority can be specified. These are used by virtual subnets to identify and order the subnets in the virtual subnet. The label and priority are separated by a colon. These containers are only allowed at the global or database container level. |
subnet | subnet subnet id netmask label:priority | Yes | None | Specifies a subnet and a pool of addresses. All addresses are assumed to be in the pool unless a range is specified on the line or addresses are modified later in the container by a range or exclude statement. The optional range is a pair of IP addresses in dotted quad format separated by a dash. An optional label and priority can be specified. These are used by virtual subnets to identify and order the subnets in the virtual subnet. The label and priority are separated by a colon. These containers are only allowed at the global or database container level. |
subnet | subnet subnet id netmask range label:priority | Yes | None | Specifies a subnet and a pool of addresses. All addresses are assumed to be in the pool unless a range is specified on the line or addresses are modified later in the container by a range or exclude statement. The optional range is a pair of IP addresses in dotted quad format separated by a dash. An optional label and priority can be specified. These are used by virtual subnets to identify and order the subnets in the virtual subnet. The label and priority are separated by a colon. These containers are only allowed at the global or database container level. |
subnet | subnet subnet id range | Yes | None | Specifies a subnet that goes within a network container. It
defines a range of addresses that is the whole subnet unless the optional
range part is specified. The netmask associated with the subnet is
taken from the surrounding network container. Note: This method is deprecated in favor of the other subnet forms. |
option | option number data ... | No | None | Specifies an option to send to a client or,
in the case of deny, an option to prevent from being sent to the client.
The option * deny clause means all options not specified
in the current container are not to be returned to the client. The
option numberdeny only denies the specified
option. number is an unsigned 8-bit integer. data is
specific to the option (see above) or can be specified as a quoted
string (indicating ASCII text) or 0xhexdigits or
hex"hexdigits" or hex "hexdigits".
If the option is in a vendor container, the option will be encapsulated
with other options in an option 43. |
option | option numberdeny | No | None | Specifies an option to send to a client or,
in the case of deny, an option to prevent from being sent to the client.
The option * deny clause means all options not specified
in the current container are not to be returned to the client. The
option numberdeny only denies the specified
option. number is an unsigned 8-bit integer. data is
specific to the option (see above) or can be specified as a quoted
string (indicating ASCII text) or 0xhexdigits or
hex"hexdigits" or hex "hexdigits".
If the option is in a vendor container, the option will be encapsulated
with other options in an option 43. |
option | option * deny | No | None | Specifies an option to send to a client or,
in the case of deny, an option to prevent from being sent to the client.
The option * deny clause means all options not specified
in the current container are not to be returned to the client. The
option numberdeny only denies the specified
option. number is an unsigned 8-bit integer. data is
specific to the option (see above) or can be specified as a quoted
string (indicating ASCII text) or 0xhexdigits or
hex"hexdigits" or hex "hexdigits".
If the option is in a vendor container, the option will be encapsulated
with other options in an option 43. |
exclude | exclude an IP address | No | None | Modifies the range on the container in which the exclude statement is in. The exclude statement is not valid in the global or database container levels. The exclude statement removes the specified address or range from the current range on the container. The exclude statement allows you to create noncontiguous ranges for subnets or other containers. |
exclude | exclude dotted_quad-dotted_quad | No | None | Modifies the range on the container in which the exclude statement is in. The exclude statement is not valid in the global or database container levels. The exclude statement removes the specified address or range from the current range on the container. The exclude statement allows you to create noncontiguous ranges for subnets or other containers. |
range | range IP_address | No | None | Modifies the range on the container in which the range statement is in. The range statement is not valid in the global or database container levels. If the range is the first in the container that does not specify a range on the container definition line, then the range for the container becomes the range specified by the range statement. Any range statement after the first range or all range statements for a containers that specifies ranges in its definition are added to the current range. With the range statement, a single address or set of addresses can be added to the range. The range must fit inside the subnet container definition. |
range | range dotted_quad-dotted_quad | No | None | Modifies the range on the container in which the range statement is in. The range statement is not valid in the global or database container levels. If the range is the first in the container that does not specify a range on the container definition line, then the range for the container becomes the range specified by the range statement. Any range statement after the first range or all range statements for a containers that specifies ranges in its definition are added to the current range. With the range statement, a single address or set of addresses can be added to the range. The range must fit inside the subnet container definition. |
client | client hwtype hwaddr NONE | Yes | None | Specifies a client container that denies the client specified by the hwaddr and hwtype from getting an address. If hwtype is 0, then hwaddr is an ASCII string. Otherwise, hwtype is the hardware type for the client and hwaddr is the hardware address of the client. If the hwaddr is a string, then quotes are accepted around the string. If the hwaddr is a hexstring, then the address may be specified by 0xhexdigits or hex digits. range allows the client specified by the hwaddr and hwtype to get an address in the range. Must be regular expressions to match multiple clients. |
client | client hwtype hwaddr ANY | Yes | None | Specifies a client container that denies the client specified by the hwaddr and hwtype from getting an address. If hwtype is 0, then hwaddr is an ASCII string. Otherwise, hwtype is the hardware type for the client and hwaddr is the hardware address of the client. If the hwaddr is a string, then quotes are accepted around the string. If the hwaddr is a hexstring, then the address may be specified by 0xhexdigits or hex digits. range allows the client specified by the hwaddr and hwtype to get an address in the range. Must be regular expressions to match multiple clients. |
client | client hwtype hwaddr dotted_quad | Yes | None | Specifies a client container that denies the client specified by the hwaddr and hwtype from getting an address. If hwtype is 0, then hwaddr is an ASCII string. Otherwise, hwtype is the hardware type for the client and hwaddr is the hardware address of the client. If the hwaddr is a string, then quotes are accepted around the string. If the hwaddr is a hexstring, then the address may be specified by 0xhexdigits or hex digits. range allows the client specified by the hwaddr and hwtype to get an address in the range. Must be regular expressions to match multiple clients. |
client | client hwtype hwaddr range | Yes | None | Specifies a client container that denies the client specified by the hwaddr and hwtype from getting an address. If hwtype is 0, then hwaddr is an ASCII string. Otherwise, hwtype is the hardware type for the client and hwaddr is the hardware address of the client. If the hwaddr is a string, then quotes are accepted around the string. If the hwaddr is a hexstring, then the address may be specified by 0xhexdigits or hex digits. range allows the client specified by the hwaddr and hwtype to get an address in the range. Must be regular expressions to match multiple clients. |
class | class string | Yes | None | Specifies a class container with name string. String can be quoted or not. If quoted, the quotes are removed before comparison. Quotes are required for strings with spaces or tabs. This container is valid at any level. A range can be supplied to indicate a set of addresses to hand out to a client with this class. The range is either a single dotted quad IP address or two dotted quad IP addresses separated by a dash. |
class | class string range | Yes | None | Specifies a class container with name string. String can be quoted or not. If quoted, the quotes are removed before comparison. Quotes are required for strings with spaces or tabs. This container is valid at any level. A range can be supplied to indicate a set of addresses to hand out to a client with this class. The range is either a single dotted quad IP address or two dotted quad IP addresses separated by a dash. |
network | network network id netmask | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
network | network network id | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
network | network network id range | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
vendor | vendor vendor_id | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
vendor | vendor vendor_id hex"" | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
vendor | vendor vendor_id hex "" | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
vendor | vendor vendor_id 0xdata | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
vendor | vendor vendor_id "" | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
vendor | vendor vendor_id range | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
vendor | vendor vendor_id range hex"" | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
vendor | vendor vendor_id range hex "" | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
vendor | vendor vendor_id range 0xdata | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
vendor | vendor vendor_id range "" | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
inoption | inoption number option_data | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
inoption | inoption number option_data range | Yes | None | Specifies a container to be matched against
any arbitrary incoming option specified by the client. number specifies
the option number. option_data specifies
the key to match for this container to be selected during address
and option selection for the client. option_data is
specified in expected form — quoted string, IP address, integer value
— for well known options, or it can be optionally specified as a hexadecimal
string of bytes if preceded by the characters 0x .
For options that are not well known to the server, a hexadecimal string
of bytes can be specified in the same fashion. Additionally, the option_data can
indicate a regular expression to be compared against the string representation
of the client's option data. Regular expressions are specified in
a quoted string beginning "! (double quote followed
by an exclamation mark). The string form of options not well known
to the server will be a hexadecimal string of bytes NOT preceded with
the characters 0x |
virtual | virtual fill id id ... | No | None | Specifies a virtual subnet with a policy. fill means
use all addresses in the container before going to the next container. rotate means
select an address from the next pool in the list on each request. sfill and srotate are
the same as fill and rotate , but
a search is done to see if the client matches containers, vendors,
or classes in the subnet. If a match is found that can supply an address,
the address is taken from that container instead of following the
policy. There can be as many IDs as needed. id is
either the subnet ID from the subnet definition or the label from
the subnet definition. The label is required if there are multiple
subnets with the same subnet id. |
virtual | virtual sfill id id ... | No | None | Specifies a virtual subnet with a policy. fill means
use all addresses in the container before going to the next container. rotate means
select an address from the next pool in the list on each request. sfill and srotate are
the same as fill and rotate , but
a search is done to see if the client matches containers, vendors,
or classes in the subnet. If a match is found that can supply an address,
the address is taken from that container instead of following the
policy. There can be as many IDs as needed. id is
either the subnet ID from the subnet definition or the label from
the subnet definition. The label is required if there are multiple
subnets with the same subnet id. |
virtual | virtual rotate id id ... | No | None | Specifies a virtual subnet with a policy. fill means
use all addresses in the container before going to the next container. rotate means
select an address from the next pool in the list on each request. sfill and srotate are
the same as fill and rotate , but
a search is done to see if the client matches containers, vendors,
or classes in the subnet. If a match is found that can supply an address,
the address is taken from that container instead of following the
policy. There can be as many IDs as needed. id is
either the subnet ID from the subnet definition or the label from
the subnet definition. The label is required if there are multiple
subnets with the same subnet id. |
virtual | virtual srotate id id ... | No | None | Specifies a virtual subnet with a policy. fill means
use all addresses in the container before going to the next container. rotate means
select an address from the next pool in the list on each request. sfill and srotate are
the same as fill and rotate , but
a search is done to see if the client matches containers, vendors,
or classes in the subnet. If a match is found that can supply an address,
the address is taken from that container instead of following the
policy. There can be as many IDs as needed. id is
either the subnet ID from the subnet definition or the label from
the subnet definition. The label is required if there are multiple
subnets with the same subnet id. |
inorder: | inorder: id id ... | No | None | Specifies a virtual subnet with a policy of fill, which means use all addresses in the container before going to the next container. There can be as many IDs as needed. id is either the subnet ID from the subnet definition or the label from the subnet definition. The label is required if there are multiple subnets with the same subnet ID. |
balance: | balance: id id ... | No | None | Specifies a virtual subnet with a policy of rotate, which means use the next address in the next container. There can be as many IDs as needed. id is either the subnet ID from the subnet definition or the label from the subnet definition. The label is required if there are multiple subnets with the same subnet ID. |
supportBootp | supportBootp true | No | Yes | Specifies whether the current container and all below it (until overridden) should support BOOTP clients. |
supportBootp | supportBootp 1 | No | Yes | Specifies whether the current container and all below it (until overridden) should support BOOTP clients. |
supportBootp | supportBootp yes | No | Yes | Specifies whether the current container and all below it (until overridden) should support BOOTP clients. |
supportBootp | supportBootp false | No | Yes | Specifies whether the current container and all below it (until overridden) should support BOOTP clients. |
supportBootp | supportBootp 0 | No | Yes | Specifies whether the current container and all below it (until overridden) should support BOOTP clients. |
supportBootp | supportBootp no | No | Yes | Specifies whether the current container and all below it (until overridden) should support BOOTP clients. |
supportBootp | Specifies whether the current container and all below it (until overridden) should support BOOTP clients. | |||
supportUnlistedclients | supportUnlistedclients BOTH | No | Both | Specifies whether the current container and
all below it (until overridden) should support unlisted clients. The
value indicates whether all clients should be allowed access without
specific client statements, DHCP clients only, BOOTP clients
only, or no one. Note: The true and false values are supported for
compatibility with previous versions and are deprecated. The true
value corresponds to BOTH and the false value corresponds to NONE.
|
supportUnlistedclients | supportUnlistedclients DHCP | No | Both | Specifies whether the current container and
all below it (until overridden) should support unlisted clients. The
value indicates whether all clients should be allowed access without
specific client statements, DHCP clients only, BOOTP clients
only, or no one. Note: The true and false values are supported for
compatibility with previous versions and are deprecated. The true
value corresponds to BOTH and the false value corresponds to NONE.
|
supportUnlistedclients | supportUnlistedclients BOOTP | No | Both | Specifies whether the current container and
all below it (until overridden) should support unlisted clients. The
value indicates whether all clients should be allowed access without
specific client statements, DHCP clients only, BOOTP clients
only, or no one. Note: The true and false values are supported for
compatibility with previous versions and are deprecated. The true
value corresponds to BOTH and the false value corresponds to NONE.
|
supportUnlistedclients | supportUnlistedclients NONE | No | Both | Specifies whether the current container and
all below it (until overridden) should support unlisted clients. The
value indicates whether all clients should be allowed access without
specific client statements, DHCP clients only, BOOTP clients
only, or no one. Note: The true and false values are supported for
compatibility with previous versions and are deprecated. The true
value corresponds to BOTH and the false value corresponds to NONE.
|
supportUnlistedclients | supportUnlistedclients true | No | Both | Specifies whether the current container and
all below it (until overridden) should support unlisted clients. The
value indicates whether all clients should be allowed access without
specific client statements, DHCP clients only, BOOTP clients
only, or no one. Note: The true and false values are supported for
compatibility with previous versions and are deprecated. The true
value corresponds to BOTH and the false value corresponds to NONE.
|
supportUnlistedclients | supportUnlistedclients yes | No | Both | Specifies whether the current container and
all below it (until overridden) should support unlisted clients. The
value indicates whether all clients should be allowed access without
specific client statements, DHCP clients only, BOOTP clients
only, or no one. Note: The true and false values are supported for
compatibility with previous versions and are deprecated. The true
value corresponds to BOTH and the false value corresponds to NONE.
|
supportUnlistedclients | supportUnlistedclients 1 | No | Both | Specifies whether the current container and
all below it (until overridden) should support unlisted clients. The
value indicates whether all clients should be allowed access without
specific client statements, DHCP clients only, BOOTP clients
only, or no one. Note: The true and false values are supported for
compatibility with previous versions and are deprecated. The true
value corresponds to BOTH and the false value corresponds to NONE.
|
supportUnlistedclients | supportUnlistedclients false | No | Both | Specifies whether the current container and
all below it (until overridden) should support unlisted clients. The
value indicates whether all clients should be allowed access without
specific client statements, DHCP clients only, BOOTP clients
only, or no one. Note: The true and false values are supported for
compatibility with previous versions and are deprecated. The true
value corresponds to BOTH and the false value corresponds to NONE.
|
supportUnlistedclients | supportUnlistedclients no | No | Both | Specifies whether the current container and
all below it (until overridden) should support unlisted clients. The
value indicates whether all clients should be allowed access without
specific client statements, DHCP clients only, BOOTP clients
only, or no one. Note: The true and false values are supported for
compatibility with previous versions and are deprecated. The true
value corresponds to BOTH and the false value corresponds to NONE.
|
supportUnlistedclients | supportUnlistedclients 0 | No | Both | Specifies whether the current container and
all below it (until overridden) should support unlisted clients. The
value indicates whether all clients should be allowed access without
specific client statements, DHCP clients only, BOOTP clients
only, or no one. Note: The true and false values are supported for
compatibility with previous versions and are deprecated. The true
value corresponds to BOTH and the false value corresponds to NONE.
|
addressrecorddb | addressrecrddb path | No | None | If specified, it works like the backupfile keyword.
Only valid in the global or database container level. Note: This method is deprecated. |
backupfile | backupfile path | No | /etc/db_file.crbk | Specifies the file to use for database backups. Only valid in the global or database container level. |
checkpointfile | checkpointfile path | No | /etc/db_file.chkpt | Specifies the database checkpoint files. The first checkpoint file is the path. The second checkpoint file is path with the last character replaced with a 2. So, the checkpoint file should not end in 2. Only valid in the global or database container level. |
clientrecorddb | clientrecorddb path | No | /etc/db_file.cr | Specifies the database save file. The file contains all the client records the DHCP server has serviced. Only valid in the global or database container level. |
bootstrapserver | bootstrapserver IP address | No | None | Specifies the server clients should use from which to TFTP files after receiving BOOTP or DHCP packets. This value fills in the siaddr field in the packet. This is valid at any container level. |
giaddrfield | giaddrfield IP address | No | None | Specifies the giaddrfield for response packets. Note: This specification is illegal in the BOOTP and DHCP protocols, but some clients require the giaddr field to be the default gateway for the network. Because of this potential conflict, giaddrfield should only be used within a client container, although it can work at any level. |
pingTime | pingTime n time_unit | No | 3 seconds | Specifies the amount of time to wait for a ping response before handing out an address. The default time unit is hundredths of a second. The time unit value is defined in the note preceding this table. This is valid at any container level. The time_unit parameter is optional. |
bootptime | bootptime n time_unit | No | -1, infinite | Specifies the amount of time to lease an address to a BOOTP client. The default is -1, which means infinite. The normal time unit values are available. The time unit parameter is optional. This is valid at any container level. |
AllRoutesBroadcast | allroutesbroadcast no | No | 0 | Specifies whether responses should be broadcast to all routes, if a broadcast response is required. This is valid at any container level. This is ignored by the operating system's DHCP servers, because the actual MAC address of the client, including RIFs, are stored for the return packet. This is valid at any container level. |
AllRoutesBroadcast | allroutesbroadcast false | No | 0 | Specifies whether responses should be broadcast to all routes, if a broadcast response is required. This is valid at any container level. This is ignored by the operating system's DHCP servers, because the actual MAC address of the client, including RIFs, are stored for the return packet. This is valid at any container level. |
AllRoutesBroadcast | allroutesbroadcast 0 | No | 0 | Specifies whether responses should be broadcast to all routes, if a broadcast response is required. This is valid at any container level. This is ignored by the operating system's DHCP servers, because the actual MAC address of the client, including RIFs, are stored for the return packet. This is valid at any container level. |
AllRoutesBroadcast | allroutesbroadcast yes | No | 0 | Specifies whether responses should be broadcast to all routes, if a broadcast response is required. This is valid at any container level. This is ignored by the operating system's DHCP servers, because the actual MAC address of the client, including RIFs, are stored for the return packet. This is valid at any container level. |
AllRoutesBroadcast | allroutesbroadcast true | No | 0 | Specifies whether responses should be broadcast to all routes, if a broadcast response is required. This is valid at any container level. This is ignored by the operating system's DHCP servers, because the actual MAC address of the client, including RIFs, are stored for the return packet. This is valid at any container level. |
AllRoutesBroadcast | allroutesbroadcast 1 | No | 0 | Specifies whether responses should be broadcast to all routes, if a broadcast response is required. This is valid at any container level. This is ignored by the operating system's DHCP servers, because the actual MAC address of the client, including RIFs, are stored for the return packet. This is valid at any container level. |
addressassigned | addressassigned "string" | No | None | Specifies a quoted string to execute when an address is assigned to a client. The string should have two %s. The first %s is the client id in the form type-string. The second %s is an IP address in dotted quad format. This is valid at any container level. |
addressreleased | addressreleased "string" | No | None | Specifies a quoted string to execute when an address is released by a client. The string should have one %s. The %s is the IP address being released in dotted quad format. This is valid at any container level. |
appenddomain | appenddomain 0 | No | No | Specifies whether to append the defined option 15 domain name to the client-suggested host name in the event that the client does not suggest a domain name as well. This is valid at any container level. |
appenddomain | appenddomain no | No | No | Specifies whether to append the defined option 15 domain name to the client-suggested host name in the event that the client does not suggest a domain name as well. This is valid at any container level. |
appenddomain | appenddomain false | No | No | Specifies whether to append the defined option 15 domain name to the client-suggested host name in the event that the client does not suggest a domain name as well. This is valid at any container level. |
appenddomain | appenddomain 1 | No | No | Specifies whether to append the defined option 15 domain name to the client-suggested host name in the event that the client does not suggest a domain name as well. This is valid at any container level. |
appenddomain | appenddomain yes | No | No | Specifies whether to append the defined option 15 domain name to the client-suggested host name in the event that the client does not suggest a domain name as well. This is valid at any container level. |
appenddomain | appenddomain true | No | No | Specifies whether to append the defined option 15 domain name to the client-suggested host name in the event that the client does not suggest a domain name as well. This is valid at any container level. |
canonical | canonical 0 | No | 0 | Specifies that the client id is in canonical format. This is valid only in the client container. |
canonical | canonical no | No | 0 | Specifies that the client id is in canonical format. This is valid only in the client container. |
canonical | canonical false | No | 0 | Specifies that the client id is in canonical format. This is valid only in the client container. |
canonical | canonical 1 | No | 0 | Specifies that the client id is in canonical format. This is valid only in the client container. |
canonical | canonical yes | No | 0 | Specifies that the client id is in canonical format. This is valid only in the client container. |
canonical | canonical true | No | 0 | Specifies that the client id is in canonical format. This is valid only in the client container. |
leaseTimeDefault | leaseTimeDefault n time_unit | No | 86400 seconds | Specifies the default lease time for clients. This is valid at any container level. The time_unit parameter is optional. |
proxyarec | proxyarec never | No | usedhcpddnsplus | Specifies what options and methods should be
used for A record updates in the DNS. never means
never update the A record. usedhcpddns means use
option 81 if the client specifies it. usedhcpddnsplus means
use option 81 or option 12 and 15, if specified. always means
do the A record update for all clients. XXXXprotected modifies
the nsupdate command to make sure the client is
allowed. standard is a synonym for always . protected is
a synonym for alwaysprotected . This is valid at
any container level. |
proxyarec | proxyarec usedhcpddns | No | usedhcpddnsplus | Specifies what options and methods should be
used for A record updates in the DNS. never means
never update the A record. usedhcpddns means use
option 81 if the client specifies it. usedhcpddnsplus means
use option 81 or option 12 and 15, if specified. always means
do the A record update for all clients. XXXXprotected modifies
the nsupdate command to make sure the client is
allowed. standard is a synonym for always . protected is
a synonym for alwaysprotected . This is valid at
any container level. |
proxyarec | proxyarec usedhcpddnsplus | No | usedhcpddnsplus | Specifies what options and methods should be
used for A record updates in the DNS. never means
never update the A record. usedhcpddns means use
option 81 if the client specifies it. usedhcpddnsplus means
use option 81 or option 12 and 15, if specified. always means
do the A record update for all clients. XXXXprotected modifies
the nsupdate command to make sure the client is
allowed. standard is a synonym for always . protected is
a synonym for alwaysprotected . This is valid at
any container level. |
proxyarec | proxyarec always | No | usedhcpddnsplus | Specifies what options and methods should be
used for A record updates in the DNS. never means
never update the A record. usedhcpddns means use
option 81 if the client specifies it. usedhcpddnsplus means
use option 81 or option 12 and 15, if specified. always means
do the A record update for all clients. XXXXprotected modifies
the nsupdate command to make sure the client is
allowed. standard is a synonym for always . protected is
a synonym for alwaysprotected . This is valid at
any container level. |
proxyarec | proxyarec usedhcpddnsprotected | No | usedhcpddnsplus | Specifies what options and methods should be
used for A record updates in the DNS. never means
never update the A record. usedhcpddns means use
option 81 if the client specifies it. usedhcpddnsplus means
use option 81 or option 12 and 15, if specified. always means
do the A record update for all clients. XXXXprotected modifies
the nsupdate command to make sure the client is
allowed. standard is a synonym for always . protected is
a synonym for alwaysprotected . This is valid at
any container level. |
proxyarec | proxyarec usedhcpddnsplusprotected | No | usedhcpddnsplus | Specifies what options and methods should be
used for A record updates in the DNS. never means
never update the A record. usedhcpddns means use
option 81 if the client specifies it. usedhcpddnsplus means
use option 81 or option 12 and 15, if specified. always means
do the A record update for all clients. XXXXprotected modifies
the nsupdate command to make sure the client is
allowed. standard is a synonym for always . protected is
a synonym for alwaysprotected . This is valid at
any container level. |
proxyarec | proxyarec alwaysprotected | No | usedhcpddnsplus | Specifies what options and methods should be
used for A record updates in the DNS. never means
never update the A record. usedhcpddns means use
option 81 if the client specifies it. usedhcpddnsplus means
use option 81 or option 12 and 15, if specified. always means
do the A record update for all clients. XXXXprotected modifies
the nsupdate command to make sure the client is
allowed. standard is a synonym for always . protected is
a synonym for alwaysprotected . This is valid at
any container level. |
proxyarec | proxyarec standard | No | usedhcpddnsplus | Specifies what options and methods should be
used for A record updates in the DNS. never means
never update the A record. usedhcpddns means use
option 81 if the client specifies it. usedhcpddnsplus means
use option 81 or option 12 and 15, if specified. always means
do the A record update for all clients. XXXXprotected modifies
the nsupdate command to make sure the client is
allowed. standard is a synonym for always . protected is
a synonym for alwaysprotected . This is valid at
any container level. |
proxyarec protected | No | usedhcpddnsplus | Specifies what options and methods should be
used for A record updates in the DNS. never means
never update the A record. usedhcpddns means use
option 81 if the client specifies it. usedhcpddnsplus means
use option 81 or option 12 and 15, if specified. always means
do the A record update for all clients. XXXXprotected modifies
the nsupdate command to make sure the client is
allowed. standard is a synonym for always . protected is
a synonym for alwaysprotected . This is valid at
any container level. |
|
releasednsA | releasednsA "string" | No | None | Specifies the execution string to use when an address is released. The string is used to remove the A record associated with the address released. This is valid at any container level. |
releasednsP | releasednsP "string" | No | None | Specifies the execution string to use when an address is released. The string is used to remove the PTR record associated with the address released. This is valid at any container level. |
removedns | removedns "string" | No | None | Specifies the execution string to use when an address is released.
The string is used to remove the PTR and A record associated with
the address released. This is valid at any container level. Note: This is deprecated in favor of the releasednsA and releasednsP keywords. |
updatedns | updatedns "string" | No | None | Specifies the execution string to use when an address is bound.
The string is used to update both the A and the PTR record associated
with the address. This is valid at any container level. Note: This is deprecated in favor of the updatednsA and updatednsP keywords. |
updatednsA | updatednsA "string" | No | None | Specifies the execution string to use when an address is bound. The string is used to update the A record associated with the address. This is valid at any container level. |
updatednsP | updatednsP "string" | No | None | Specifies the execution string to use when an address is bound. The string is used to update the PTR record associated with the address. This is valid at any container level. |
hostnamepolicy | hostnamepolicy suggested | No | default | Specifies which host name to return to the client.
Default policy is to prefer the defined host name and domain name
over suggested names. Other policies imply strict adherence (for example: defined will
return the defined name or none if no name is defined in the configuration).
Also, policies using the always modifier will dictate
the server to return the host name option regardless of whether the
client requested it through the parameter list option. Note that
suggesting a host name also implies requesting it, and host names
can be suggested through option 81 or through options 12 and 15. This
keyword is valid at any container level. |
hostnamepolicy | hostnamepolicy resolved | No | default | Specifies which host name to return to the client.
Default policy is to prefer the defined host name and domain name
over suggested names. Other policies imply strict adherence (for example: defined will
return the defined name or none if no name is defined in the configuration).
Also, policies using the always modifier will dictate
the server to return the host name option regardless of whether the
client requested it through the parameter list option. Note that
suggesting a host name also implies requesting it, and host names
can be suggested through option 81 or through options 12 and 15. This
keyword is valid at any container level. |
hostnamepolicy | hostnamepolicy always_resolved | No | default | Specifies which host name to return to the client.
Default policy is to prefer the defined host name and domain name
over suggested names. Other policies imply strict adherence (for example: defined will
return the defined name or none if no name is defined in the configuration).
Also, policies using the always modifier will dictate
the server to return the host name option regardless of whether the
client requested it through the parameter list option. Note that
suggesting a host name also implies requesting it, and host names
can be suggested through option 81 or through options 12 and 15. This
keyword is valid at any container level. |
hostnamepolicy | hostnamepolicy defined | No | default | Specifies which host name to return to the client.
Default policy is to prefer the defined host name and domain name
over suggested names. Other policies imply strict adherence (for example: defined will
return the defined name or none if no name is defined in the configuration).
Also, policies using the always modifier will dictate
the server to return the host name option regardless of whether the
client requested it through the parameter list option. Note that
suggesting a host name also implies requesting it, and host names
can be suggested through option 81 or through options 12 and 15. This
keyword is valid at any container level. |
hostnamepolicy | hostnamepolicy always_defined | No | default | Specifies which host name to return to the client.
Default policy is to prefer the defined host name and domain name
over suggested names. Other policies imply strict adherence (for example: defined will
return the defined name or none if no name is defined in the configuration).
Also, policies using the always modifier will dictate
the server to return the host name option regardless of whether the
client requested it through the parameter list option. Note that
suggesting a host name also implies requesting it, and host names
can be suggested through option 81 or through options 12 and 15. This
keyword is valid at any container level. |
hostnamepolicy | hostnamepolicy default | No | default | Specifies which host name to return to the client.
Default policy is to prefer the defined host name and domain name
over suggested names. Other policies imply strict adherence (for example: defined will
return the defined name or none if no name is defined in the configuration).
Also, policies using the always modifier will dictate
the server to return the host name option regardless of whether the
client requested it through the parameter list option. Note that
suggesting a host name also implies requesting it, and host names
can be suggested through option 81 or through options 12 and 15. This
keyword is valid at any container level. |
bootfilepolicy | bootfilepolicy suggested | No | suggested | Specifies a preference for returning the bootfile
name to a client. suggested prefers the client-suggested
bootfile name to any server-configured name. merge appends
the client suggested name to the server-configured home directory.
defined prefers the defined name over any suggested
bootfile name. always returns the defined name regardless
of whether the client requests the bootfile option through the parameter
list option. |
bootfilepolicy | bootfilepolicy merge | No | suggested | Specifies a preference for returning the bootfile
name to a client. suggested prefers the client-suggested
bootfile name to any server-configured name. merge appends
the client suggested name to the server-configured home directory.
defined prefers the defined name over any suggested
bootfile name. always returns the defined name regardless
of whether the client requests the bootfile option through the parameter
list option. |
bootfilepolicy | bootfilepolicy defined | No | suggested | Specifies a preference for returning the bootfile
name to a client. suggested prefers the client-suggested
bootfile name to any server-configured name. merge appends
the client suggested name to the server-configured home directory.
defined prefers the defined name over any suggested
bootfile name. always returns the defined name regardless
of whether the client requests the bootfile option through the parameter
list option. |
bootfilepolicy | bootfilepolicy always | No | suggested | Specifies a preference for returning the bootfile
name to a client. suggested prefers the client-suggested
bootfile name to any server-configured name. merge appends
the client suggested name to the server-configured home directory.
defined prefers the defined name over any suggested
bootfile name. always returns the defined name regardless
of whether the client requests the bootfile option through the parameter
list option. |
stealfromchildren | stealfromchildren true | No | No | Specifies whether the parent container should
"steal" from children containers when the parent container runs out
of addresses. This means that if you have a subnet with class defined
with a range of addresses, those addresses are reserved for those
clients that specify that class. If stealfromchildren is
true, then addresses will be pulled from a child to try and satisfy
the request. The default is to not steal an address. |
stealfromchildren | stealfromchildren 1 | No | No | Specifies whether the parent container should
"steal" from children containers when the parent container runs out
of addresses. This means that if you have a subnet with class defined
with a range of addresses, those addresses are reserved for those
clients that specify that class. If stealfromchildren is
true, then addresses will be pulled from a child to try and satisfy
the request. The default is to not steal an address. |
stealfromchildren | stealfromchildren yes | No | No | Specifies whether the parent container should
"steal" from children containers when the parent container runs out
of addresses. This means that if you have a subnet with class defined
with a range of addresses, those addresses are reserved for those
clients that specify that class. If stealfromchildren is
true, then addresses will be pulled from a child to try and satisfy
the request. The default is to not steal an address. |
stealfromchildren | stealfromchildren false | No | No | Specifies whether the parent container should
"steal" from children containers when the parent container runs out
of addresses. This means that if you have a subnet with class defined
with a range of addresses, those addresses are reserved for those
clients that specify that class. If stealfromchildren is
true, then addresses will be pulled from a child to try and satisfy
the request. The default is to not steal an address. |
stealfromchildren | stealfromchildren 0 | No | No | Specifies whether the parent container should
"steal" from children containers when the parent container runs out
of addresses. This means that if you have a subnet with class defined
with a range of addresses, those addresses are reserved for those
clients that specify that class. If stealfromchildren is
true, then addresses will be pulled from a child to try and satisfy
the request. The default is to not steal an address. |
stealfromchildren | stealfromchildren no | No | No | Specifies whether the parent container should
"steal" from children containers when the parent container runs out
of addresses. This means that if you have a subnet with class defined
with a range of addresses, those addresses are reserved for those
clients that specify that class. If stealfromchildren is
true, then addresses will be pulled from a child to try and satisfy
the request. The default is to not steal an address. |
homedirectory | homedirectory path | No | None | Specifies the home directory to use in the file section of the response packet. This can be specified at any container level. The bootfile policy defines how items specified in the file section of the incoming packet interact with the bootfile and the home directory statements. |
bootfile | bootfile path | No | None | Specifies the bootfile to use in the file section of the response packet. This can be specified at any container level. The bootfile policy defines how items specified in the file section of the incoming packet interact with the bootfile and the home directory statements. |
pxebootfile | pxebootfile system_architecture major_version minor_version boofilename | No | None | Specifies the bootfile to be given for a client. This is used
only when dhcpsd supports PXE clients (pxeservertype is dhcp_pxe_binld).
The configuration file parser generates an error if the number of
parameters after pxebootfile is less than four, and
it ignores any additional parameters. pxebootfile can
only be used within a container. |
supportoption118 | supportoption118 no/yes | No. Can be defined only in subnet container. | None | This keyword specifies whether this container supports the option 118. Yes mean it is supported, and No means it is not supported. For this option to take effect, you have to also use the keyword supportsubnetselection. |