Working With DHCP Options (Task Map)
Options are keywords for network configuration parameters that the DHCP server can pass
to clients. In the Solaris DHCP service, you cannot create, delete, or modify
the standard DHCP options. The standard options are defined by the DHCP protocol,
so the options cannot change. You can only perform tasks on options that
you create for your site. For this reason, when you first set up
your DHCP service, the Options tab in DHCP Manager is empty until you
create options for your site.
If you create options on the DHCP server, you must also add
information about the options on the DHCP client. For the Solaris DHCP client,
you must edit the /etc/dhcp/inittab file to add entries for the new options. See
the dhcp_inittab(4) man page for more information about this file.
If you have DHCP clients that are not Solaris clients, refer to
the documentation for those clients for information about adding options or symbols. See About DHCP Options
for more information about options in Solaris DHCP.
You can use either DHCP Manager or the dhtadm command to create, modify,
or delete options.
Tip - Options are called symbols in the DHCP literature. The dhtadm command and its
related man page also refer to options as symbols.
The following task map lists tasks that you must perform to create, modify,
and delete DHCP options. The task map contains links to procedures for the
tasks.
Before you create DHCP options, you should be familiar with the option properties
listed in the following table.
Table 15-5 DHCP Option Properties
Option Property |
Description |
Category |
The category of an option must be
one of the following:
Vendor – Options specific to a client's vendor platform, either hardware or software.
Site – Options specific to your site.
Extend – Newer options that have been added to the DHCP protocol, but not yet implemented as standard options in Solaris DHCP.
|
Code |
The code is a unique number that you assign
to an option. The same code cannot be used for any other option
within its option category. The code must be appropriate for the option category:
Vendor – Code values of 1–254 for each vendor class
Site – Code values of 128–254
Extend – Code values of 77–127
|
Data
type |
The data type specifies what kind of data can be assigned as a value
for the option. The valid data types are described in the following list.
ASCII – Text string value.
BOOLEAN – No value is associated with the Boolean data type. The presence of the option indicates that a condition is true, while the absence of the option indicates that a condition is false. For example, the Hostname option is Boolean. The presence of Hostname in a macro causes the DHCP server to look up the host name associated with the assigned address.
IP – One or more IP addresses, in dotted decimal format (xxx.xxx.xxx.xxx).
OCTET – Uninterpreted ASCII representation of binary data. For example, a client ID uses the octet data type. Valid characters are 0–9, A–F, and a–f. Two ASCII characters are needed to represent an 8-bit quantity.
UNUMBER8, UNUMBER16, UNUMBER32, UNUMBER64, SNUMBER8, SNUMBER16, SNUMBER32, or SNUMBER64 – Numeric value. An initial U or S indicates whether the number is unsigned or signed. The digits at the end indicate how many bits are in the number.
|
Granularity |
The
granularity specifies how many “instances” of the data type are needed to represent
a complete option value. For example, a data type of IP and a
granularity of 2 would mean that the option value must contain two IP
addresses. |
Maximum |
The maximum number of values that can be specified for the option.
For example, suppose the maximum is 2, the granularity is 2, and the
data type is IP. In this case, the option value could contain a
maximum of two pairs of IP addresses. |
Vendor client classes |
This option is available only
when the option category is Vendor. Vendor client classes identify the client classes
with which the Vendor option is associated. The class is an ASCII string
that represents the client machine type or operating system. For example, the class
string for some models of Sun workstations is SUNW.Sun-Blade-100. This type of option enables
you to define configuration parameters that are passed to all clients of the
same class, and only clients of that class. You can specify multiple client
classes. Only those DHCP clients with a client class value that matches a
class that you specify receive the options scoped by that class. The client class
is determined by the vendor of the DHCP client. For DHCP clients that
are not Solaris clients, refer to the vendor documentation for the DHCP client
for the client class. For Solaris clients, the Vendor client class can be
obtained by typing the uname -i command on the client. To specify the Vendor client
class, substitute periods for any commas in the string returned by the uname
command. For example, if the string SUNW,Sun-Blade-100 is returned by the uname -i
command, you should specify the Vendor client class as SUNW.Sun-Blade-100. |
Creating DHCP Options
If you need to pass client information for which there is not already
an existing option in the DHCP protocol, you can create an option. See
the dhcp_inittab(4) man page for a list of all the options that
are defined in Solaris DHCP before you create your own option.
You can use the dhtadm -A -s command or DHCP Manager's Create Option dialog box
to create new options.
The following figure shows DHCP Manager's Create Option dialog box.
Figure 15-17 Create Option Dialog Box in DHCP Manager
How to Create DHCP Options (DHCP Manager)
- In DHCP Manager, select the Options tab.
See How to Start and Stop DHCP Manager for information about DHCP Manager.
- Choose Create from the Edit menu.
The Create Options dialog box opens.
- Type a short descriptive name for the new option.
The name can contain up to 128 alphanumeric characters and spaces.
- Type or select values for each setting in the dialog box.
Refer to Table 15-5 for information about each setting, or view the DHCP
Manager help.
- Select Notify DHCP Server of Change if you are finished creating options.
This selection tells the DHCP server to reread the dhcptab table to put
the change into effect immediately after you click OK.
- Click OK.
You can now add the option to macros, and assign a value to
the option to pass to clients.
How to Create DHCP Options (dhtadm)
- Become superuser or assume a role or user name that is assigned to
the DHCP Management profile.
For more information about the DHCP Management profile, see Setting Up User Access to DHCP Commands.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
- Create a DHCP option by typing a command using the following format:
# dhtadm -A -s option-name -d 'category,code,data-type,granularity,maximum' -g
- option-name
Is an alphanumeric string of 128 characters of less.
- category
Is one of the following: Site, Extend, or Vendor=list-of-classes. list-of-classes is a space-separated list of vendor client classes to which the option applies. See Table 15-5 for information about how to determine the vendor client class.
- code
Is a numeric value that is appropriate to the option category, as explained in Table 15-5.
- data-type
Is specified by a keyword that indicates the type of data that is passed with the option, as explained in Table 15-5.
- granularity
Is specified as a nonnegative number, as explained in Table 15-5.
- maximum
Is a nonnegative number, as explained in Table 15-5.
Example 15-3 Creating a DHCP Option With
dhtadmThe following command would create an option called NewOpt, which is a Site
category option. The option's code is 130. The option's value can be set
to a single 8-bit unsigned integer.
#
dhtadm -A -s NewOpt -d 'Site,130,UNUMBER8,1,1' -gThe following command would create an option called NewServ, which is a Vendor
category option that applies to clients whose machine type is SUNW,Sun-Blade-100 or SUNW,Sun-Blade-1000. The
option's code is 200. The option's value can be set to one
IP address.
#
dhtadm -A -s NewServ -d 'Vendor=SUNW.Sun-Blade-100 \ SUNW.Sun-Blade-1000,200,IP,1,1' -g
Modifying DHCP Options
If you have created options for your DHCP service, you can change the
properties for these options. You can use the dhtadm -M -s command or DHCP Manager's
Option Properties dialog box to modify options.
Note that you should modify the Solaris DHCP client's option information to reflect
the same modification that you make to the DHCP service. See Modifying the Solaris DHCP Client's Option Information.
The following figure shows DHCP Manager's Option Properties dialog box.
Figure 15-18 Option Properties Dialog Box in DHCP Manager
How to Modify DHCP Option Properties (DHCP Manager)
- In DHCP Manager, select the Options tab.
See How to Start and Stop DHCP Manager for information about DHCP Manager.
- Select the option that you want to modify.
- Choose Properties from the Edit menu.
The Option Properties dialog box opens.
- Edit the properties as needed.
See Table 15-5 for information about the properties, or view the DHCP Manager help.
- Select Notify DHCP Server of Change when you are finished with options.
The change is made to the dhcptab table. The DHCP server is
signaled to reread the dhcptab table to put the changes into effect.
- Click OK.
How to Modify DHCP Option Properties (dhtadm)
- Become superuser or assume a role or user name that is assigned to
the DHCP Management profile.
For more information about the DHCP Management profile, see Setting Up User Access to DHCP Commands.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
- Modify an option by typing a command using the following format:
# dhtadm -M -s option-name -d 'category,code,data-type,granularity,maximum' -g
- option-name
Specifies the name of the option that you want to change.
- category
Can be Site, Extend, or Vendor=list-of-classes. list-of-classes is a space-separated list of vendor client classes to which the option applies. For example, SUNW.Sun-Blade-100 SUNW.Ultra-80 SUNWi86pc.
- code
Specifies a numeric value that is appropriate to the option category, as explained in Table 15-5.
- data-type
Specifies a keyword that indicates the type of data that is passed with the option, as explained in Table 15-5.
- granularity
Is a nonnegative number, as explained in Table 15-5.
- maximum
Is a nonnegative number, as explained in as explained in Table 15-5.
Note that you must specify all of the DHCP option properties with
the -d switch, not just the properties that you want to change.
Example 15-4 Modifying a DHCP Option With
dhtadmThe following command would modify an option called NewOpt. The option is a
Site category option. The option's code is 135. The option's value can be
set to a single 8-bit unsigned integer.
#
dhtadm -M -s NewOpt -d 'Site,135,UNUMBER8,1,1'The following command would modify an option called NewServ, which is a Vendor
category option. The option now applies to clients whose machine type is SUNW,Sun-Blade-100
or SUNW,i86pc. The option's code is 200. The option's value can be set
to one IP address.
#
dhtadm -M -s NewServ -d 'Vendor=SUNW.Sun-Blade-100 \ SUNW.i86pc,200,IP,1,1' -g
Deleting DHCP Options
You cannot delete standard DHCP options. However, if you have defined options for
your DHCP service, you can delete these options by using DHCP Manager or
the dhtadm command.
How to Delete DHCP Options (DHCP Manager)
- In DHCP Manager, select the Options tab.
See How to Start and Stop DHCP Manager for information about DHCP Manager.
- Select the option that you want to delete.
- Choose Delete from the Edit menu.
The Delete Option dialog box opens.
- Select Notify DHCP Server of Change if you are finished deleting options.
This selection tells the DHCP server to reread the dhcptab table to
put the change into effect immediately after you click OK.
- Click OK.
How to Delete DHCP Options (dhtadm)
- Become superuser or assume a role or user name that is assigned to
the DHCP Management profile.
For more information about the DHCP Management profile, see Setting Up User Access to DHCP Commands.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
- Delete a DHCP option by typing a command using the following format:
# dhtadm -D -s option-name -g
Modifying the Solaris DHCP Client's Option Information
If you add a new DHCP option to your DHCP server, you
must add a complementary entry to each DHCP client's option information. If you
have a DHCP client that is not a Solaris DHCP client, refer to
that client's documentation for information about adding options or symbols.
On a Solaris DHCP client, you must edit the /etc/dhcp/inittab file and
add an entry for each option that you add to the DHCP server.
If you later modify the option on the server, you must also
modify the entry in the client's /etc/dhcp/inittab file.
Refer to the dhcp_inittab(4) man page for detailed information about the syntax of
the /etc/dhcp/inittab file.
Note - If you added DHCP options to the dhcptags file in a previous Solaris
release, you must add the options to the /etc/dhcp/inittab file. See DHCP Option Information
for more information.