|
File Formats | dhcp_inittab(4) |
| dhcp_inittab - information repository for DHCP options |
|
The /etc/dhcp/inittab file contains 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 file provides 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.
The dhcp_inittab file can only be changed upon system upgrade. Only additions of SITE options (or changes to same) will be 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 dhctab(4) 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.
-
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.
-
VENDOR
- Each vendor may define 254 options unique to that vendor. The vendor is identified within a DHCP packet by the "Vendor Class" option, number 60. 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. The dhcp_inittab file only contains 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 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.
- 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
-
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 IP address
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 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). |
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. |
IpTTLtblbr | 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. |
XFontSrvtblbr | 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_DAtblbr | 78 | Directory agent, OCTET. |
SLP_SS | 79 | Service scope, OCTET. |
AgentOpt | 82 | Agent circuit ID, OCTET. |
FQDN | 89 | Fully Qualified Domain Name, OCTET. |
PXEarch | 93 | Client system architecture, NUMBER. |
PXEnii | 94 | Client Network Device Interface, OCTET. |
PXEcid | 97 | UUID/GUID-based client indentifier, OCTET. |
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) |
Include | N/A | Include listed macro values in this macro. |
|
|
| 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.
|
|
|
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Availability | SUNWcsr |
Interface Stability | Evolving |
|
|
dhcpinfo(1),dhcpagent(1M), isspace(3C), dhctab(4), attributes(5), dhcp(5), dhcp_modules(5)
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.
|
| |