Network

Information on BOOTP Vendor Extensions and DHCP Options

The Bootstrap Protocol (BOOTP) describes an IP/UDP bootstrap protocol (BOOTP) which allows a diskless client machine to discover its own IP address, the address of a server host, and the name of a file to be loaded into memory and executed. The Dynamic Host Configuration Protocol (DHCP) provides a framework for automatic configuration of IP hosts.

DHCP options provide specific configuration and service information to DHCP clients. These options appear as variable-length fields at the end of the DHCP messages that DHCP servers and clients exchange.

For more information on DHCP, see the following links below
– For more information on Automatic IP Assignment: Dynamic Host Configuration Protocol (DHCP)
– How to install Dynamic Host Configuration Protocol on Windows Server 2019
– On how to configure DHCP: Post-deployment of Dynamic Host Configuration Protocol.

An option space is a collection of options. ISC (Internet Systems Consortium) DHCP has five predefined option spaces: dhcp, agent, server, nwip, and fqdn. The NIOS appliance supports only the predefined DHCP option space, which contains the industry standard options as well as additional options you can configure as needed.

  • Predefined options: These are option codes 1 to 125. They are allocated by the IANA and defined by IETF standards. The DHCP server knows these standard options, and they are predefined on the server. You cannot redefine these options or delete them from the DHCP option space.
  • Custom options: These are option codes 126 to 254. They are not defined by IETF standards and are available for private use. You can use these option codes to provide configuration or service information that none of the predefined options provide.

You can also create option spaces to define new groups of options. For example, you can create additional option spaces to define vendor specific options, which are encapsulated in option 43. When a DHCP client requests vendor specific options, it makes a request using the vendor identifier set in option 60 and a list of requested vendor specific options (option 43). The DHCP server then responds with the list of replies for the various options encapsulated into option 43.

On how to configure DHCP options 60, 66 and 67, see the following article https://techdirectarchive.com/2020/05/26/wds-and-dhcp-deployment-scenarios-how-to-configure-dhcp-server-option-60-66-and-67-for-windows-deployment-services/

Note: that custom options defined in the DHCP option space are included in the options section of the DHCP messages that DHCP servers and clients exchange. Custom options defined in a user-defined option space are always encapsulated in option 43 in DHCP messages.

See the below table for BOOTP Vendor Extensions and DHCP Options

0Pad0None[RFC2132]
1Subnet Mask4Subnet Mask Value[RFC2132]
2Time Offset4Time Offset in Seconds from UTC (note: deprecated by 100 and 101)[RFC2132]
3RouterNN/4 Router addresses[RFC2132]
4Time ServerNN/4 Timeserver addresses[RFC2132]
5Name ServerNN/4 IEN-116 Server addresses[RFC2132]
6Domain ServerNN/4 DNS Server addresses[RFC2132]
7Log ServerNN/4 Logging Server addresses[RFC2132]
8Quotes ServerNN/4 Quotes Server addresses[RFC2132]
9LPR ServerNN/4 Printer Server addresses[RFC2132]
10Impress ServerNN/4 Impress Server addresses[RFC2132]
11RLP ServerNN/4 RLP Server addresses[RFC2132]
12HostnameNHostname string[RFC2132]
13Boot File Size2Size of boot file in 512 byte chunks[RFC2132]
14Merit Dump FileNClient to dump and name the file to dump it to[RFC2132]
15Domain NameNThe DNS domain name of the client[RFC2132]
16Swap ServerNSwap Server address[RFC2132]
17Root PathNPath name for root disk[RFC2132]
18Extension FileNPath name for more BOOTP info[RFC2132]
19Forward On/Off1Enable/Disable IP Forwarding[RFC2132]
20SrcRte On/Off1Enable/Disable Source Routing[RFC2132]
21Policy FilterNRouting Policy Filters[RFC2132]
22Max DG Assembly2Max Datagram Reassembly Size[RFC2132]
23Default IP TTL1Default IP Time to Live[RFC2132]
24MTU Timeout4Path MTU Aging Timeout[RFC2132]
25MTU PlateauNPath MTU Plateau Table[RFC2132]
26MTU Interface2Interface MTU Size[RFC2132]
27MTU Subnet1All Subnets are Local[RFC2132]
28Broadcast Address4Broadcast Address[RFC2132]
29Mask Discovery1Perform Mask Discovery[RFC2132]
30Mask Supplier1Provide Mask to Others[RFC2132]
31Router Discovery1Perform Router Discovery[RFC2132]
32Router Request4Router Solicitation Address[RFC2132]
33Static RouteNStatic Routing Table[RFC2132]
34Trailers1Trailer Encapsulation[RFC2132]
35ARP Timeout4ARP Cache Timeout[RFC2132]
36Ethernet1Ethernet Encapsulation[RFC2132]
37Default TCP TTL1Default TCP Time to Live[RFC2132]
38Keepalive Time4TCP Keepalive Interval[RFC2132]
39Keepalive Data1TCP Keepalive Garbage[RFC2132]
40NIS DomainNNIS Domain Name[RFC2132]
41NIS ServersNNIS Server Addresses[RFC2132]
42NTP ServersNNTP Server Addresses[RFC2132]
43Vendor SpecificNVendor Specific Information[RFC2132]
44NETBIOS Name SrvNNETBIOS Name Servers[RFC2132]
45NETBIOS Dist SrvNNETBIOS Datagram Distribution[RFC2132]
46NETBIOS Node Type1NETBIOS Node Type[RFC2132]
47NETBIOS ScopeNNETBIOS Scope[RFC2132]
48X Window FontNX Window Font Server[RFC2132]
49X Window ManagerNX Window Display Manager[RFC2132]
50Address Request4Requested IP Address[RFC2132]
51Address Time4IP Address Lease Time[RFC2132]
52Overload1Overload “sname” or “file”[RFC2132]
53DHCP Msg Type1DHCP Message Type[RFC2132]
54DHCP Server Id4DHCP Server Identification[RFC2132]
55Parameter ListNParameter Request List[RFC2132]
56DHCP MessageNDHCP Error Message[RFC2132]
57DHCP Max Msg Size2DHCP Maximum Message Size[RFC2132]
58Renewal Time4DHCP Renewal (T1) Time[RFC2132]
59Rebinding Time4DHCP Rebinding (T2) Time[RFC2132]
60Class IdNClass Identifier[RFC2132]
61Client IdNClient Identifier[RFC2132]
62NetWare/IP DomainNNetWare/IP Domain Name[RFC2242]
63NetWare/IP OptionNNetWare/IP sub Options[RFC2242]
64NIS-Domain-NameNNIS+ v3 Client Domain Name[RFC2132]
65NIS-Server-AddrNNIS+ v3 Server Addresses[RFC2132]
66Server-NameNTFTP Server Name[RFC2132]
67Bootfile-NameNBoot File Name[RFC2132]
68Home-Agent-AddrsNHome Agent Addresses[RFC2132]
69SMTP-ServerNSimple Mail Server Addresses[RFC2132]
70POP3-ServerNPost Office Server Addresses[RFC2132]
71NNTP-ServerNNetwork News Server Addresses[RFC2132]
72WWW-ServerNWWW Server Addresses[RFC2132]
73Finger-ServerNFinger Server Addresses[RFC2132]
74IRC-ServerNChat Server Addresses[RFC2132]
75StreetTalk-ServerNStreetTalk Server Addresses[RFC2132]
76STDA-ServerNST Directory Assist. Addresses[RFC2132]
77User-ClassNUser Class Information[RFC3004]
78Directory AgentNdirectory agent information[RFC2610]
79Service ScopeNservice location agent scope[RFC2610]
80Rapid Commit0Rapid Commit[RFC4039]
81Client FQDNNFully Qualified Domain Name[RFC4702]
82Relay Agent InformationNRelay Agent Information[RFC3046]
83iSNSNInternet Storage Name Service[RFC4174]
84REMOVED/Unassigned[RFC3679]
85NDS ServersNNovell Directory Services[RFC2241]
86NDS Tree NameNNovell Directory Services[RFC2241]
87NDS ContextNNovell Directory Services[RFC2241]
88BCMCS Controller Domain Name list[RFC4280]
89BCMCS Controller IPv4 address option[RFC4280]
90AuthenticationNAuthentication[RFC3118]
91client-last-transaction-time option[RFC4388]
92associated-ip option[RFC4388]
93Client SystemNClient System Architecture[RFC4578]
94Client NDINClient Network Device Interface[RFC4578]
95LDAPNLightweight Directory Access Protocol[RFC3679]
96REMOVED/Unassigned[RFC3679]
97UUID/GUIDNUUID/GUID-based Client Identifier[RFC4578]
98User-AuthNOpen Group’s User Authentication[RFC2485]
99GEOCONF_CIVIC[RFC4776]
100PCodeNIEEE 1003.1 TZ String[RFC4833]
101TCodeNReference to the TZ Database[RFC4833]
102-107REMOVED/Unassigned[RFC3679]
108REMOVED/Unassigned[RFC3679]
109OPTION_DHCP4O6_S46_SADDR16DHCPv4 over DHCPv6 Softwire Source Address Option[RFC8539]
110REMOVED/Unassigned[RFC3679]
111Unassigned[RFC3679]
112Netinfo AddressNNetInfo Parent Server Address[RFC3679]
113Netinfo TagNNetInfo Parent Server Tag[RFC3679]
114URLNURL[RFC3679]
115REMOVED/Unassigned[RFC3679]
116Auto-ConfigNDHCP Auto-Configuration[RFC2563]
117Name Service SearchNName Service Search[RFC2937]
118Subnet Selection Option4Subnet Selection Option[RFC3011]
119Domain SearchNDNS domain search list[RFC3397]
120SIP Servers DHCP OptionNSIP Servers DHCP Option[RFC3361]
121Classless Static Route OptionNClassless Static Route Option[RFC3442]
122CCCNCableLabs Client Configuration[RFC3495]
123GeoConf Option16GeoConf Option[RFC6225]
124V-I Vendor ClassVendor-Identifying Vendor Class[RFC3925]
125V-I Vendor-Specific InformationVendor-Identifying Vendor-Specific Information[RFC3925]
126Removed/Unassigned[RFC3679]
127Removed/Unassigned[RFC3679]
128PXE – undefined (vendor specific)[RFC4578]
128Etherboot signature. 6 bytes: E4:45:74:68:00:00
128DOCSIS “full security” server IP address
128TFTP Server IP address (for IP Phone software load)
129PXE – undefined (vendor specific)[RFC4578]
129Kernel options. Variable length string
129Call Server IP address
130PXE – undefined (vendor specific)[RFC4578]
130Ethernet interface. Variable length string.
130Discrimination string (to identify vendor)
131PXE – undefined (vendor specific)[RFC4578]
131Remote statistics server IP address
132PXE – undefined (vendor specific)[RFC4578]
132IEEE 802.1Q VLAN ID
133PXE – undefined (vendor specific)[RFC4578]
133IEEE 802.1D/p Layer 2 Priority
134PXE – undefined (vendor specific)[RFC4578]
134Diffserv Code Point (DSCP) for VoIP signalling and media streams
135PXE – undefined (vendor specific)[RFC4578]
135HTTP Proxy for phone-specific applications
136OPTION_PANA_AGENT[RFC5192]
137OPTION_V4_LOST[RFC5223]
138OPTION_CAPWAP_AC_V4NCAPWAP Access Controller addresses[RFC5417]
139OPTION-IPv4_Address-MoSNa series of suboptions[RFC5678]
140OPTION-IPv4_FQDN-MoSNa series of suboptions[RFC5678]
141SIP UA Configuration Service DomainsNList of domain names to search for SIP User Agent Configuration[RFC6011]
142OPTION-IPv4_Address-ANDSFNANDSF IPv4 Address Option for DHCPv4[RFC6153]
143OPTION_V4_SZTP_REDIRECTNThis option provides a list of URIs for SZTP bootstrap servers[RFC8572]
144GeoLoc16Geospatial Location with Uncertainty[RFC6225]
145FORCERENEW_NONCE_CAPABLE1Forcerenew Nonce Capable[RFC6704]
146RDNSS SelectionNInformation for selecting RDNSS[RFC6731]
147-149Unassigned[RFC3942]
150TFTP server address[RFC5859]
150Etherboot
150GRUB configuration path name
151status-codeN+1Status code and optional N byte text message describing status.[RFC6926]
152base-time4Absolute time (seconds since Jan 1, 1970) message was sent.[RFC6926]
153start-time-of-state4Number of seconds in the past when client entered current state.[RFC6926]
154query-start-time4Absolute time (seconds since Jan 1, 1970) for beginning of query.[RFC6926]
155query-end-time4Absolute time (seconds since Jan 1, 1970) for end of query.[RFC6926]
156dhcp-state1State of IP address.[RFC6926]
157data-source1Indicates information came from local or remote server.[RFC6926]
158OPTION_V4_PCP_SERVERVariable; the minimum length is 5.Includes one or multiple lists of PCP server IP addresses; each list is treated as a separate PCP server.[RFC7291]
159OPTION_V4_PORTPARAMS4This option is used to configure a set of ports bound to a shared IPv4 address.[RFC7618]
160DHCP Captive-PortalNDHCP Captive-Portal[RFC7710]
161OPTION_MUD_URL_V4N (variable)Manufacturer Usage Descriptions[RFC8520]
162-174Unassigned[RFC3942]
175Etherboot (Tentatively Assigned – 2005-06-23)
176IP Telephone (Tentatively Assigned – 2005-06-23)
177Etherboot (Tentatively Assigned – 2005-06-23)
177PacketCable and CableHome (replaced by 122)
178-207Unassigned[RFC3942]
208PXELINUX Magic4magic string = F1:00:74:7E[RFC5071][Deprecated]
209Configuration FileNConfiguration file[RFC5071]
210Path PrefixNPath Prefix Option[RFC5071]
211Reboot Time4Reboot Time[RFC5071]
212OPTION_6RD18 + NOPTION_6RD with N/4 6rd BR addresses[RFC5969]
213OPTION_V4_ACCESS_DOMAINNAccess Network Domain Name[RFC5986]
214-219Unassigned
220Subnet Allocation OptionNSubnet Allocation Option[RFC6656]
221Virtual Subnet Selection (VSS) Option[RFC6607]
222-223Unassigned[RFC3942]
224-254Reserved (Private Use)
255End0None

I hope you found this blog post helpful. If you have any questions, please let me know in the comment session.

Advertisements

Leave a Reply