dhcpd.conf(4tcp)


dhcpd.conf -- DHCP configuration file format

Synopsis

# Option definitions -- must be defined before being used

[option [option_code] {
comment value
name string
type integer|binary|string [array]
max_val value
min_val value
}
...]

# Client definitions

[client opaque [client_identifier_object] {
comment value
ip_address value
# Option value assignments
[option value
...]
}
...]

[client [hardware_type] [hardware_address] {
comment value
ip_address value
# Option value assignments
[option value
...]
}
...]

# User class definitions

[user_class [user_class_string] {
comment value
# Option value assignments
[option value
...]
}
...]

# Vendor class definitions

[vendor_class [vendor_class_string] {
comment value
# Vendor-specific option definition
[option [option_code] {
comment value
name string
type integer|binary|string [array]
max_val value
min_val value
}
...]
# Option value assignments
[option value
...]
}
...]

# Subnet definitions

[subnet [subnet_IP_address] {
comment value
mask value
pool name
lease_dflt seconds
lease_max seconds
t1 value
t2 value
# Option value assignments
[option value
...]
}
...]

# Global option definitions

[global {
# Option value assignments
option value
...
}]

# Server options

[server {
aas_server IP_address
aas_password password
address_probe [true|false]
option_overload [true|false]
lease_res seconds
lease_pad value
}]

Description

The default configuration file for the DHCP server is /etc/inet/dhcpd.conf. It uses a text-based, line-oriented format, and contains one or more entries that contain settings for various parameters.

Each line of the DHCP configuration file must be no more than 1023 characters in length, including the newline character. There is no facility for line continuation.

Spaces or tabs are required between lexical elements, and may be used at the beginning and end of lines arbitrarily. Blank lines may appear anywhere.

Comments are denoted by a ``#'' preceded by a space or tab or the beginning of a line. Everything from the ``#'' to the end of the line is ignored.

Data types

All IP addresses can be specified as in ``dotted decimal'' notation or as a host name (which must be resolvable).

Integer values must be base decimal. Depending on the parameter, the value may be signed or unsigned, and may have range restrictions based on the size of the integer or other constraints.

String values must be specified as a number of ASCII characters which can include tabs or spaces.

Definition types

The various definition types shown in the ``Synopsis'' section have different sets of allowable parameters as described below.

option [option_code]
This entry allows you to define new global option types. Outside the scope of vendor class definitions, an option type with a given code may only be defined once in the file and it may not redefine an existing option.

You can also define vendor-specific options within vendor class definitions. Such definitions may redefine existing options. (See the description of vendor_class.)

Allowed keywords are:


comment
Defines a comment.

name
Identifies the option but it is not used by the DHCP server.

type
Specifies whether the option's value is integer, binary or string. The array modifier indicates that the option's value is an array.

For integer types, the min_val and max_val keywords can be used to specify the minimum and maximum values of the option's value.

For string and binary types, the max_length and max_length keywords can be used to specify the minimum and maximum length of the option's value. For array types, these keywords specify the minimum and maximum size of the array.


client opaque [client_identifier_object]

client [hardware_type] [hardware_address]
A client entry defines an individual client as described in RFC 2131.

If the opaque keyword is defined, the client identifier object is treated as an opaque object and is stored as a character string.

If opaque is not defined, a hardware type and a hardware address are expected. The hardware type is validated against the server's list of valid hardware types. If it does not match an existing hardware type, it will be added to the list if its value is numeric. If it does match an existing type, the length of the hardware address will be checked against the expected length for that hardware type.

Allowed keywords are:


comment
Defines a comment.

ip_address
Defines an IP address for a particular client. The address must not be included in any address pool. The address will be allocated with an infinite lease.
Option values for a client can be assigned within the scope of the client definition.

user_class [user_class_string]
This entry defines options for a particular user class.

Allowed keywords are:


comment
Defines a comment.
Option values for a user class can be assigned within the scope of the user class definition.

vendor_class [vendor_class_string]
This entry defines options for a particular vendor class. The vendor-class string is specific to a given hardware vendor.

Allowed keywords are:


comment
Defines a comment.
Vendor-specific options can be defined for each vendor class. These options can be defined for option codes 1-254 and take precedence over the standard options within the scope of the vendor class definition.

Option values for a vendor class can be assigned within the scope of the vendor class definition.


subnet [subnet_IP_address]
This entry defines options for a particular subnet.

Allowed keywords are:


comment
Defines a comment.

mask
Defines the subnet netmask.

pool
Restricts the operation of the server to a specified pool of addresses.

lease_dflt
Defines the default lease period in days for the subnet. A value of infinite means that there is no limit.

lease_max
Defines the maximum lease period in days for the subnet. A value of infinite means that there is no limit.

t1
Defines the lease renewal time in units of 0.1%. For example, a value of 500 indicates that the lease should be renewed after 50% of its lease had expired.

t2
Defines the rebind time in units of 0.1%.
Option values for a subnet can be assigned within the scope of the subnet definition.

global
This entry defines options for any address. Only one of these entries is allowed in the dhcpd.conf file.

Global option values are assigned here.


server
This entry defines options that affect the operation of the DHCP server. Only one server entry is allowed in the dhcpd.conf file.

Allowed keywords are:


aas_server
Defines the IP address of the Address Allocation Server (AAS).

aas_password
Defines a password for the AAS server. A password must be defined if the AAS server is on a remote machine.

option_overload
Defines whether option overloading is allowed. If its value is non-zero, it is allowed. By default it is not allowed.

lease_res
Defines the initial lease reservation time in seconds. The default value is 180 seconds.

lease_pad
Defines the lease padding. This is the amount of extra time the server allocates above the client lease time. It is defined in units of 0.1% of the client lease time. The default value of 10 adds 1% to the client lease time for the server lease time.

address_probe
Defines whether an address that is about to be allocated should be tested using ping. By default, this is enabled.

Options

Standard options supported by the DHCP server are defined in RFC 2132. Keywords for these options are defined in the file /etc/inet/dhcp.opts. User-defined options are also supported. These must be defined using the option entry type before they are referenced.

Files


/etc/inet/dhcp.opts
option identifier definitions

/etc/inet/dhcpd.conf
default configuration file for the DHCP server

References

aasd.conf(4tcp), aasd(1Mtcp), dhcpd(1Mtcp)

RFC 2131, RFC 2132


© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004