xref: /illumos-gate/usr/src/man/man5/dhcp_inittab.5 (revision 533affcbc7fc4d0c8132976ea454aaa715fe2307)
te
Copyright (C) 2009, Sun Microsystems, Inc. All Rights Reserved
Copyright (c) 2016, Chris Fraire <cfraire@me.com>.
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License. You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.
See the License for the specific language governing permissions and limitations under the License. When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with
the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
DHCP_INITTAB 5 "Oct 31, 2016"
NAME
dhcp_inittab - information repository for DHCP options
DESCRIPTION

The /etc/dhcp/inittab and the /etc/dhcp/inittab6 files contain information about the Dynamic Host Configuration Protocol (DHCP) options, which are network configuration parameters passed from DHCP servers to DHCP clients when a client machine uses DHCP. Since many DHCP-related commands must parse and understand these DHCP options, this file serves as a central location where information about these options may be obtained.

The DHCP inittab and inittab6 files provide three general pieces of information:

A mnemonic alias, or symbol name, for each option number. For instance, option 12 is aliased to the name Hostname. This is useful for DHCP-related programs that require human interaction, such as dhcpinfo(1).

Information about the syntax for each option. This includes information such as the type of the value, for example, whether it is a 16-bit integer or an IP address.

The policy for what options are visible to which DHCP-related programs.

If you make any changes to the /etc/dhcp/inittab file, note that only additions of or changes to SITE options are preserved during upgrade. For /etc/dhcp/inittab6, no options are preserved during upgrade.

The VENDOR options defined here are intended for use by the Solaris DHCP client and DHCP management tools. The SUNW vendor space is owned by Sun, and changes are likely during upgrade. If you need to configure the Solaris DHCP server to support the vendor options of a different client, see dhcptab(5) for details.

Each DHCP option belongs to a certain category, which roughly defines the scope of the option; for instance, an option may only be understood by certain hosts within a given site, or it may be globally understood by all DHCP clients and servers. The following categories are defined; the category names are not case-sensitive: STANDARD

All client and server DHCP implementations agree on the semantics. These are administered by the Internet Assigned Numbers Authority (IANA). These options are numbered from 1 to 127 for IPv4 DHCP, and 1 to 65535 for DHCPv6.

SITE

Within a specific site, all client and server implementations agree on the semantics. However, at another site the type and meaning of the option may be quite different. These options are numbered from 128 to 254 for IPv4 DHCP. DHCPv6 does not support site options.

VENDOR

Each vendor may define 254 options (65536 for DHCPv6) unique to that vendor. The vendor is identified within a DHCP packet by the "Vendor Class" option, number 60 (number 17 for DHCPv6). An option with a specific numeric identifier belonging to one vendor will, in general, have a type and semantics different from that of a different vendor. Vendor options are "super-encapsulated" into the vendor field number 43, as defined in RFC 2132 for IPv4 DHCP, and number 17 as defined in RFC 3315 for DHCPv6. The /etc/dhcp/inittab file contains only Sun vendor options. Define non-Sun vendor options in the dhcptab file.

FIELD

This category allows the fixed fields within a DHCP packet to be aliased to a mnemonic name for use with dhcpinfo(1).

INTERNAL

This category is internal to the Solaris DHCP implementation and will not be further defined.

"DHCP inittab and inittab6 Format"

Data entries are written one per line and have seven fields; each entry provides information for one option. Each field is separated by a comma, except for the first and second, which are separated by whitespace (as defined in isspace(3C)). An entry cannot be continued onto another line. Blank lines and those whose first non-whitespace character is '#' are ignored.

The fields, in order, are:

Mnemonic Identifier The Mnemonic Identifier is a user-friendly alias for the option number; it is not case sensitive. This field must be per-category unique and should be unique across all categories. The option names in the STANDARD, SITE, and VENDOR spaces should not overlap, or the behavior will be undefined. See Mnemonic Identifiers for Options section of this man page for descriptions of the option names.

Category (scope) The Category field is one of STANDARD, SITE, VENDOR, FIELD, or INTERNAL and identifies the scope in which the option falls. SITE is not used in inittab6.

Option Number The Option Number is the number of this option when it is in a DHCP packet. This field should be per-category unique and the STANDARD and SITE fields should not have overlapping code fields or the behavior is undefined.

Data Type Data Type is one of the following values, which are not case sensitive:

Ascii

A printable character string

Bool

Has no value. Scope limited to category limited to INTERNAL. Presence of an option of this type within a Solaris configuration file represents TRUE, absence represents FALSE.

Octet

An array of bytes

Unumber8

An 8-bit unsigned integer

Snumber8

An 8-bit signed integer

Unumber16

A 16-bit unsigned integer

Snumber16

A 16-bit signed integer

Unumber24

A 24-bit unsigned integer

Unumber32

A 32-bit unsigned integer

Snumber32

A 32-bit signed integer

Unumber64

A 64-bit unsigned integer

Snumber64

A 64-bit signed integer

Ip

An IPv4 address

Ipv6

An IPv6 address

Duid

An RFC 3315 Unique Identifier

Domain

An RFC 1035-encoded domain name

The data type field describes an indivisible unit of the option payload, using one of the values listed above.

Granularity The Granularity field describes how many indivisible units in the option payload make up a whole value or item for this option. The value must be greater than zero (0) for any data type other than Bool, in which case it must be zero (0).

Maximum Number Of Items This value specifies the maximum items of Granularity which are permissible in a definition using this symbol. For example, there can only be one IP address specified for a subnet mask, so the Maximum number of items in this case is one (1). A Maximum value of zero (0) means that a variable number of items is permitted.

Visibility The Visibility field specifies which DHCP-related programs make use of this information, and should always be defined as sdmi for newly added options.

"Mnemonic Identifiers for IPv4 Options"

The following table maps the mnemonic identifiers used in Solaris DHCP to RFC 2132 options:

Symbol Code Description
Subnet 1
Subnet Mask, dotted Internet address (IP).
UTCoffst 2
Coordinated Universal time offset (seconds) [deprecated].
Router 3 List of Routers, IP.
Timeserv 4 List of RFC-868 servers, IP.
IEN116ns 5 List of IEN 116 name servers, IP.
DNSserv 6 List of DNS name servers, IP.
Logserv 7 List of MIT-LCS UDP log servers, IP.
Cookie 8 List of RFC-865 cookie servers, IP.
Lprserv 9
List of RFC-1179 line printer servers, IP.
Impress 10 List of Imagen Impress servers, IP.
Resource 11
List of RFC-887 resource location servers, IP.
Hostname 12
Client's hostname, value from hosts database.
Bootsize 13
Number of 512 octet blocks in boot image, NUMBER.
Dumpfile 14
Path where core image should be dumped, ASCII.
DNSdmain 15 DNS domain name, ASCII.
Swapserv 16 Client's swap server, IP.
Rootpath 17 Client's Root path, ASCII.
ExtendP 18 Extensions path, ASCII.
IpFwdF 19 IP Forwarding Enable/Disable, NUMBER.
NLrouteF 20 Non-local Source Routing, NUMBER.
PFilter 21 Policy Filter, IP.
MaxIpSiz 22
Maximum datagram Reassembly Size, NUMBER.
IpTTL 23
Default IP Time to Live, (1=<x<=255), NUMBER.
PathTO 24 RFC-1191 Path MTU Aging Timeout, NUMBER.
PathTbl 25 RFC-1191 Path MTU Plateau Table, NUMBER.
MTU 26 Interface MTU, x>=68, NUMBER.
SameMtuF 27 All Subnets are Local, NUMBER.
Broadcst 28 Broadcast Address, IP.
MaskDscF 29 Perform Mask Discovery, NUMBER.
MaskSupF 30 Mask Supplier, NUMBER.
RDiscvyF 31 Perform Router Discovery, NUMBER.
RSolictS 32 Router Solicitation Address, IP.
StaticRt 33
Static Route, Double IP (network router).
TrailerF 34 Trailer Encapsulation, NUMBER.
ArpTimeO 35 ARP Cache Time out, NUMBER.
EthEncap 36 Ethernet Encapsulation, NUMBER.
TcpTTL 37 TCP Default Time to Live, NUMBER.
TcpKaInt 38 TCP Keepalive Interval, NUMBER.
TcpKaGbF 39 TCP Keepalive Garbage, NUMBER.
NISdmain 40 NIS Domain name, ASCII.
NISservs 41 List of NIS servers, IP.
NTPservs 42 List of NTP servers, IP.
NetBNms 44 List of NetBIOS Name servers, IP.
NetBDsts 45
List of NetBIOS Distribution servers, IP.
NetBNdT 46
NetBIOS Node type (1=B-node, 2=P, 4=M, 8=H).
NetBScop 47 NetBIOS scope, ASCII.
XFontSrv 48 List of X Window Font servers, IP.
XDispMgr 49 List of X Window Display managers, IP.
LeaseTim 51 Lease Time Policy, (-1 = PERM), NUMBER.
Message 56
Message to be displayed on client, ASCII.
T1Time 58 Renewal (T1) time, NUMBER.
T2Time 59 Rebinding (T2) time, NUMBER.
NW_dmain 62 NetWare/IP Domain Name, ASCII.
NWIPOpts 63
NetWare/IP Options, OCTET (unknown type).
NIS+dom 64 NIS+ Domain name, ASCII.
NIS+serv 65 NIS+ servers, IP.
TFTPsrvN 66 TFTP server hostname, ASCII.
OptBootF 67 Optional Bootfile path, ASCII.
MblIPAgt 68 Mobile IP Home Agent, IP.
SMTPserv 69
Simple Mail Transport Protocol Server, IP.
POP3serv 70 Post Office Protocol (POP3) Server, IP.
NNTPserv 71
Network News Transport Proto. (NNTP) Server, IP.
WWWservs 72 Default WorldWideWeb Server, IP.
Fingersv 73 Default Finger Server, IP.
IRCservs 74 Internet Relay Chat Server, IP.
STservs 75 StreetTalk Server, IP.
STDAservs 76 StreetTalk Directory Assist. Server, IP.
UserClas 77 User class information, ASCII.
SLP_DA 78 Directory agent, OCTET.
SLP_SS 79 Service scope, OCTET.
ClientFQDN 81 Fully Qualified Domain Name, OCTET.
AgentOpt 82 Agent circuit ID, OCTET.
FQDN 89 Fully Qualified Domain Name, OCTET.
PXEarch 93 Client system architecture, NUMBER.
BootFile N/A File to Boot, ASCII.
BootPath N/A
Boot path prefix to apply to client's requested boot file, ASCII.
BootSrvA N/A Boot Server, IP.
BootSrvN N/A Boot Server Hostname, ASCII.
EchoVC N/A
Echo Vendor Class Identifier Flag, (Present=TRUE)
LeaseNeg N/A Lease is Negotiable Flag, (Present=TRUE)
"Mnemonic Identifiers for IPv6 Options"

The following table maps the mnemonic identifiers used in Solaris DHCP to RFC 3315, 3319, 3646, 3898, 4075, and 4280 options:

Symbol Code Description
ClientID 1 Unique identifier for client, DUID
ServerID 2 Unique identifier for server, DUID
Preference 7 Server preference, NUMBER
Unicast 12 Unicast server address, IPV6
UserClass 15 User classes for client, OCTET
VendorClass 16 Vendor client hardware items, OCTET
SIPNames 21 SIP proxy server name list, DOMAIN
SIPAddresses 22
SIP proxy server addresses in preference order, IPV6
DNSAddresses 23
DNS server addresses in preference order, IPV6
DNSSearch 24 DNS search list, DOMAIN
NISServers 27
NIS server addresses in preference order, IPV6
NIS+Servers 28
NIS+ server addresses in preference order, IPV6
NISDomain 29 NIS domain name, DOMAIN
NIS+Domain 30 NIS+ domain name, DOMAIN
SNTPServers 31 IPV6
InfoRefresh 32 UNUMBER32
BCMCDomain 33
Broadcast/multicast control server name list, DOMAIN
BCMCAddresses 34
Broadcast/multicast control server addresses, IPV6
EXAMPLES

Example 1 Altering the DHCP inittab File

In general, the DHCP inittab file should only be altered to add SITE options. If other options are added, they will not be automatically carried forward when the system is upgraded. For instance:

ipPairs SITE, 132, IP, 2, 0, sdmi

describes an option named ipPairs, that is in the SITE category. That is, it is defined by each individual site, and is option code 132, which is of type IP Address, consisting of a potentially infinite number of pairs of IP addresses.

FILES
/etc/dhcp/inittab

/etc/dhcp/inittabv6

ATTRIBUTES

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE ATTRIBUTE VALUE
Interface Stability Committed
SEE ALSO

dhcpinfo (1), isspace (3C), dhcptab (5), attributes (7), dhcp (7), dhcp_modules (7), dhcpagent (8)

System Administration Guide: IP Services

Alexander, S., and R. Droms. RFC 2132, DHCP Options and BOOTP Vendor Extensions. Network Working Group. March 1997.

Droms, R. RFC 2131, Dynamic Host Configuration Protocol. Network Working Group. March 1997.

Droms, R. RFC 3315, Dynamic Host Configuration Protocol for IPv6 (DHCPv6). Cisco Systems. July 2003.

Schulzrinne, H., and B. Volz. RFC 3319, Dynamic Host Configuration Protocol (DHCPv6) Options for Session Initiation Protocol (SIP) Servers. Columbia University and Ericsson. July 2003.

Droms, R. RFC 3646, DNS Configuration options for Dynamic Host Configuration Protocol for IPv6 (DHCPv6). Cisco Systems. December 2003.

Kalusivalingam, V. RFC 3898, Network Information Service (NIS) Configuration Options for Dynamic Host Configuration Protocol for IPv6 (DHCPv6). Cisco Systems. October 2004.

Chowdhury, K., P. Yegani, and L. Madour. RFC 4280, Dynamic Host Configuration Protocol (DHCP) Options for Broadcast and Multicast Control Servers. Starent Networks, Cisco Systems, and Ericsson. November 2005.

Mockapetris, P.V. RFC 1035, Domain names - implementation and specification. ISI. November 1987.