Option Classes

This feature allows quick introduction of custom applications for enterprise networks. DHCP option classes provide a way to easily configure network clients with the parameters necessary to meet the special requirements of custom applications. Equipment from multiple vendors on a network can also use different option numbers for different functions. The option types used to support vendor classes—the vendor class identifier and the vendor-specific option—are defined in the Internet DHCP options standard reference, RFC 2132.

For Windows 2000 Server, there are two types of option classes: vendor-defined and user-defined. These classes can be configured on your servers to offer specialized client support in the following ways:

  • Add and configure vendor-defined classes for submanaging DHCP options assigned to clients identified by vendor type.

  • Add and configure user-defined classes for submanaging DHCP options assigned to clients identified by a common need for a similar DHCP option configuration.

After options classes are defined on a DHCP server, scopes on the server must be configured to assign options for specific user-defined and vendor-defined option classes.

Vendor Classes

Vendor-defined option classes can be used by DHCP clients to identify the client's vendor type and configuration to the DHCP server when obtaining a lease. For a client to identify its vendor class during the lease process, the client needs to include the vendor class ID option (option code 60) when it requests or selects a lease from a DHCP server.

The vendor class identifier information is a string of character data interpreted by the DHCP servers. Vendors can choose to define specific vendor class identifiers to convey particular configuration or other identification information about a client. For example, the identifier might encode the client's hardware or software configuration. Most vendor types are derived from standard reserved hardware and operating system-type abbreviation codes listed in RFC 1700.

When vendor options are specified, the server performs the following additional steps to provide a lease to the client:

  1. The server checks to see that the vendor class identified by the client request is a recognized class defined on the server.
    If the vendor class is recognized, the server checks to see if any additional DHCP options are configured for this class in the active scope.
    If the vendor class is not recognized, the server ignores the vendor class identified in the client request, and returns options allocated to the default vendor class (includes all DHCP Standard Options).

  2. If the scope contains options configured specifically for use with clients in this vendor-defined class, the server returns those options using the vendor-specific option type (option code 43) as part of its acknowledgment message.

In most cases, the default vendor class—DHCP Standard Options—provides a default vendor class for grouping any Microsoft DHCP clients or other DHCP clients that do not specify a vendor class ID. In some cases, you might define additional vendor classes for other DHCP clients, such as printers or some types of UNIX clients. When you add other vendor classes for these purposes, be sure that the vendor class identifier you use to configure the class at the server matches the identifier used by clients for your third-party vendor.

User Classes

User classes allow DHCP clients to differentiate themselves by specifying what type of client they are, such as a remote access or desktop computer. For Windows 2000 computers, you can define specific user class identifiers to convey information about a client's software configuration, its physical location in a building, or about its user preferences. For example, an identifier can specify that DHCP clients are members of a user-defined class called "2nd floor, West," which has need for a special set of router, DNS, and WINS server settings. An administrator can then configure the DHCP server to configure different option types depending on the type of client receiving the lease.

Windows 2000 user classes can be used in the following ways:

  • DHCP client computers can include the DHCP user class option when sending DHCP request messages to the DHCP server. This can specifically identify the client as part of a user class on the server.

  • DHCP servers running the Microsoft DHCP service can recognize and interpret the DHCP user class option from clients and provide additional options (or a modified set of DHCP options) based on the client's user class identity.

For example, shorter leases should be assigned to remote access clients. Desktop clients on the same network might require special settings, such as CAD platforms. These variations could also include WINS and DNS server settings.

If user-defined option classes are not specified, default settings (such as server options or scope options) are assigned.

A user-defined class can be either a default or custom user class. Microsoft provides three default user classes, as described in Table 4.9.

Table 4.9 Default User Classes Provided by Microsoft DHCP

Class Type

Class ID String

Description

Default User Class

(Unspecified)

Used by the DHCP service to classify clients that do not further specify an identity or type. This class is typically used by most DHCP clients. Clients are assigned to this class under the following conditions:

  • DHCP clients that have no concept of a user class or a user class ID. This is true for most DHCP clients prior to Windows 2000.

  • Windows 2000 clients configured with a class ID unknown to the DHCP server (for example, the server has not defined this class).

Default Routing and Remote Access class

RRAS.Microsoft

Used by the Microsoft DHCP service to classify clients making a PPP-type connection through a remote access server. Typically, this class includes most dial-up networking clients that use DHCP to obtain a lease:

  • remote access clients that have no concept of a Routing and Remote Access user class or a Routing and Remote Access user class ID.


See the section titled "DHCP and Routing and Remote Access" later in this chapter for details on the interaction between server with the Routing and Remote Access feature and a DHCP server and how DHCP servers identify remote access clients.

Default BOOTP class

BOOTP

Used by the Microsoft DHCP service to classify any clients recognized as BOOTP clients.

Using the Microsoft default user classes can be useful for isolating configuration details specific for clients with special needs, such as older clients or clients that use BOOTP or Routing and Remote Access. For example, you might want to include and assign special BOOTP option types (such as option codes 66 and 67) for clients that are BOOTP type, or shorten the lease time for remote access clients.

You might also add and configure custom user classes for use by DHCP clients running Windows 2000. For custom user classes, you must specify a custom identifier that must correspond with a user class defined on the DHCP server computer.

Currently, the user class option field permits only one ASCII text string to be used for identifying clients. This means each client computer can only be identified as a member of a single user class by the DHCP server. If you need to, you can use additional user classes and make new hybrids from your other user classes. For example, if you have two user classes, one called "mobile" with short lease times assigned and another called "engineer" with an option assigned to configure a high-performance server for its clients, you could make a new hybrid class called "mobile-engineer" that would lease clients that have overlapping configuration needs specified in each class.