Commit e45ac254 authored by Ted Lemon's avatar Ted Lemon

Move vendor class stuff to dhcp-options manual page.

parent df598b3e
......@@ -1271,87 +1271,6 @@ to using the server-identifier statement.
DHCP option statements are documented in the
.B dhcp-options(5)
manual page.
.SH VENDOR ENCAPSULATED OPTIONS
The DHCP protocol defines the \fB vendor-encapsulated-options\fR
option, which allows vendors to define their own options that will be
sent encapsulated in a standard DHCP option. The format of the
.B vendor-encapsulated-options
option is either a hunk of opaque data, or an actual option buffer
just like a standard DHCP option buffer.
.PP
You can send this option to clients in one of two ways - either define
the data directly, using a text string or a colon-seperated list of
hexadecimal values, or define an option space, define some options in
that option space, provide values for them, and specify that that
option space should be used to generate the
.B vendor-encapsulated-options
option in some scope.
.PP
To send a simple clump of data, simply provide a value for the option
in the right scope - for example:
.PP
.nf
option vendor-encapsulated-options
2:4:AC:11:41:1:
3:12:73:75:6e:64:68:63:70:2d:73:65:72:76:65:72:31:37:2d:31:
4:12:2f:65:78:70:6f:72:74:2f:72:6f:6f:74:2f:69:38:36:70:63;
.fi
.PP
To define a new option space in which vendor options can be stored,
use the \fRoption space\fP statement:
.PP
.B option
.B space
.I name
.B ;
.PP
The name can then be used in option definitions, as described in
the
.B dhcp-options(5)
manual page. For example:
.nf
option space SUNW;
option SUNW.server-address code 2 = ip-address;
option SUNW.server-name code 3 = text;
option SUNW.root-path code 4 = text;
.fi
Once you have defined an option space and some options, you can set up
scopes that define values for those options, and you can say when to
use them. For example, suppose you want to handle two different
classes of clients, as in the example in the \fBVENDOR ENCAPSULATED
OPTIONS\fR section. Using the option space definition shown in the
previous example, something very similar to the
vendor-encapsulated-options definition shown earlier can be done as
follows:
.PP
.nf
class "vendor-classes" {
match option vendor-class-identifier;
}
option SUNW.server-address 172.17.65.1;
option SUNW.server-name "sundhcp-server17-1";
subclass "vendor-classes" "SUNW.Ultra-5_10" {
vendor-option-space SUNW;
option SUNW.root-path "/export/root/sparc";
}
subclass "vendor-classes" "SUNW.i86pc" {
vendor-option-space SUNW;
option SUNW.root-path "/export/root/i86pc";
}
.fi
.PP
As you can see in the preceding example, regular scoping rules apply,
so you can define values that are global in the global scope, and only
define values that are specific to a particular class in the local
scope. The \fBvendor-option-space\fR declaration indicates that in
that scope, the \fBvendor-encapsulated-options\fR option should be
constructed using the values of all the options in the SUNW option
space.
.SH SEE ALSO
dhcpd.conf(5), dhcpd.leases(5), RFC2132, RFC2131.
.SH AUTHOR
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment