Diff for /embedaddon/dhcp/common/dhcp-options.5 between versions 1.1 and 1.1.1.1

version 1.1, 2012/02/21 22:30:18 version 1.1.1.1, 2012/10/09 09:06:54
Line 1 Line 1
 .\"     $Id$  .\"     $Id$
 .\"  .\"
   .\" Copyright (c) 2012 by Internet Systems Consortium, Inc. ("ISC")
 .\" Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC")  .\" Copyright (c) 2004-2010 by Internet Systems Consortium, Inc. ("ISC")
 .\" Copyright (c) 1996-2003 by Internet Software Consortium  .\" Copyright (c) 1996-2003 by Internet Software Consortium
 .\"  .\"
Line 34  dhcp-options - Dynamic Host Configuration Protocol opt Line 35  dhcp-options - Dynamic Host Configuration Protocol opt
 The Dynamic Host Configuration protocol allows the client to receive  The Dynamic Host Configuration protocol allows the client to receive
 .B options  .B options
 from the DHCP server describing the network configuration and various  from the DHCP server describing the network configuration and various
services that are available on the network.   When configuringservices that are available on the network.  When configuring
 .B dhcpd(8)  .B dhcpd(8)
 or  or
 .B dhclient(8) ,  .B dhclient(8) ,
options must often be declared.   The syntax for declaring options,options must often be declared.  The syntax for declaring options,
 and the names and formats of the options that can be declared, are  and the names and formats of the options that can be declared, are
 documented here.  documented here.
 .SH REFERENCE: OPTION STATEMENTS  .SH REFERENCE: OPTION STATEMENTS
 .PP  .PP
 DHCP \fIoption\fR statements always start with the \fIoption\fR  DHCP \fIoption\fR statements always start with the \fIoption\fR
 keyword, followed by an option name, followed by option data.  The  keyword, followed by an option name, followed by option data.  The
option names and data formats are described below.   It is notoption names and data formats are described below.  It is not
 necessary to exhaustively specify all DHCP options - only those  necessary to exhaustively specify all DHCP options - only those
 options which are needed by clients must be specified.  options which are needed by clients must be specified.
 .PP  .PP
Line 64  data specifies an IPv6 address, like ::1 or 3ffe:bbbb: Line 65  data specifies an IPv6 address, like ::1 or 3ffe:bbbb:
 .PP  .PP
 The  The
 .B int32  .B int32
data type specifies a signed 32-bit integer.   The data type specifies a signed 32-bit integer.  The
 .B uint32  .B uint32
data type specifies an unsigned 32-bit integer.   The data type specifies an unsigned 32-bit integer.  The
 .B int16  .B int16
 and  and
 .B uint16  .B uint16
data types specify signed and unsigned 16-bit integers.   The data types specify signed and unsigned 16-bit integers.  The
 .B int8  .B int8
 and  and
 .B uint8  .B uint8
Line 90  option root-path "10.0.1.4:/var/tmp/rootfs"; Line 91  option root-path "10.0.1.4:/var/tmp/rootfs";
 The  The
 .B domain-name  .B domain-name
 data type specifies a domain name, which must not be  data type specifies a domain name, which must not be
enclosed in double quotes.   This data type is not used for anyenclosed in double quotes.  This data type is not used for any
existing DHCP options.   The domain name is stored just as if it wereexisting DHCP options.  The domain name is stored just as if it were
 a text option.  a text option.
 .PP  .PP
 The  The
Line 101  separated by commas ("example.com", "foo.example.com") Line 102  separated by commas ("example.com", "foo.example.com")
 .PP  .PP
 The  The
 .B flag  .B flag
data type specifies a boolean value.   Booleans can be either true ordata type specifies a boolean value.  Booleans can be either true or
 false (or on or off, if that makes more sense to you).  false (or on or off, if that makes more sense to you).
 .PP  .PP
 The  The
 .B string  .B string
 data type specifies either an NVT ASCII string  data type specifies either an NVT ASCII string
 enclosed in double quotes, or a series of octets specified in  enclosed in double quotes, or a series of octets specified in
hexadecimal, separated by colons.   For example:hexadecimal, separated by colons.  For example:
 .nf  .nf
 .sp 1  .sp 1
   option dhcp-client-identifier "CLIENT-FOO";    option dhcp-client-identifier "CLIENT-FOO";
Line 117  or Line 118  or
 .fi  .fi
 .SH SETTING OPTION VALUES USING EXPRESSIONS  .SH SETTING OPTION VALUES USING EXPRESSIONS
 Sometimes it's helpful to be able to set the value of a DHCP option  Sometimes it's helpful to be able to set the value of a DHCP option
based on some value that the client has sent.   To do this, you canbased on some value that the client has sent.  To do this, you can
use expression evaluation.   The use expression evaluation.  The 
 .B dhcp-eval(5)  .B dhcp-eval(5)
manual page describes how to write expressions.   To assign the resultmanual page describes how to write expressions.  To assign the result
 of an evaluation to an option, define the option as follows:  of an evaluation to an option, define the option as follows:
 .nf  .nf
 .sp 1  .sp 1
Line 251  against the client identifier. Line 252  against the client identifier.
 .PP  .PP
 Please be aware that some DHCP clients, when configured with client  Please be aware that some DHCP clients, when configured with client
 identifiers that are ASCII text, will prepend a zero to the ASCII  identifiers that are ASCII text, will prepend a zero to the ASCII
text.   So you may need to write:text.  So you may need to write:
 .nf  .nf
   
         option dhcp-client-identifier "\\0foo";          option dhcp-client-identifier "\\0foo";
Line 268  rather than: Line 269  rather than:
 This option is used in a client request (DHCPDISCOVER or DHCPREQUEST)  This option is used in a client request (DHCPDISCOVER or DHCPREQUEST)
 to allow the client to request a lease time for the IP address.  In a  to allow the client to request a lease time for the IP address.  In a
 server reply (DHCPOFFER), a DHCP server uses this option to specify  server reply (DHCPOFFER), a DHCP server uses this option to specify
the lease time it is willing to offer.                                    the lease time it is willing to offer.
 .PP  .PP
 This option is not directly user configurable in the server; refer to the  This option is not directly user configurable in the server; refer to the
 \fImax-lease-time\fR and \fIdefault-lease-time\fR server options in  \fImax-lease-time\fR and \fIdefault-lease-time\fR server options in
Line 279  This option is not directly user configurable in the s Line 280  This option is not directly user configurable in the s
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 This option, when sent by the client, specifies the maximum size of  This option, when sent by the client, specifies the maximum size of
any response that the server sends to the client.   When specified onany response that the server sends to the client.  When specified on
 the server, if the client did not send a dhcp-max-message-size option,  the server, if the client did not send a dhcp-max-message-size option,
the size specified on the server is used.   This works for BOOTP asthe size specified on the server is used.  This works for BOOTP as
 well as DHCP responses.  well as DHCP responses.
 .RE  .RE
 .PP  .PP
Line 311  RFC2132) are: Line 312  RFC2132) are:
              5     DHCPACK               5     DHCPACK
              6     DHCPNAK               6     DHCPNAK
              7     DHCPRELEASE               7     DHCPRELEASE
             8     DHCPINFORM                            8     DHCPINFORM
 .fi  .fi
 .PP  .PP
 This option is not user configurable.  This option is not user configurable.
Line 334  Legal values for this option are: Line 335  Legal values for this option are:
 .nf  .nf
              1     the \'file\' field is used to hold options               1     the \'file\' field is used to hold options
              2     the \'sname\' field is used to hold options               2     the \'sname\' field is used to hold options
             3     both fields are used to hold options                                     3     both fields are used to hold options
 .fi  .fi
 .PP  .PP
 This option is not user configurable.  This option is not user configurable.
Line 346  This option is not user configurable. Line 347  This option is not user configurable.
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 This option, when sent by the client, specifies which options the  This option, when sent by the client, specifies which options the
client wishes the server to return.   Normally, in the ISC DHCPclient wishes the server to return.  Normally, in the ISC DHCP
client, this is done using the \fIrequest\fR statement.   If thisclient, this is done using the \fIrequest\fR statement.  If this
 option is not specified by the client, the DHCP server will normally  option is not specified by the client, the DHCP server will normally
 return every option that is valid in scope and that fits into the  return every option that is valid in scope and that fits into the
reply.   When this option is specified on the server, the serverreply.  When this option is specified on the server, the server
returns the specified options.   This can be used to force a client toreturns the specified options.  This can be used to force a client to
 take options that it hasn't requested, and it can also be used to  take options that it hasn't requested, and it can also be used to
 tailor the response of the DHCP server for clients that may need a  tailor the response of the DHCP server for clients that may need a
 more limited set of options than those the server would normally  more limited set of options than those the server would normally
Line 382  This option is not user configurable. Line 383  This option is not user configurable.
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 This option is used by the client in a DHCPDISCOVER to  This option is used by the client in a DHCPDISCOVER to
request that a particular IP address be assigned.                 request that a particular IP address be assigned.
 .PP  .PP
 This option is not user configurable.  This option is not user configurable.
 .PP  .PP
Line 402  this option in a DHCPREQUEST message. Line 403  this option in a DHCPREQUEST message.
 .PP  .PP
 The value of this option is the IP address of the server.  The value of this option is the IP address of the server.
 .PP  .PP
This option is not directly user configurable. See the This option is not directly user configurable. See the
 \fIserver-identifier\fR server option in  \fIserver-identifier\fR server option in
 .B \fIdhcpd.conf(5).  .B \fIdhcpd.conf(5).
 .PP  .PP
Line 505  preference. Line 506  preference.
 .B option \fBinterface-mtu\fR \fIuint16\fR\fB;\fR  .B option \fBinterface-mtu\fR \fIuint16\fR\fB;\fR
 .RS 0.25i  .RS 0.25i
 .PP  .PP
This option specifies the MTU to use on this interface.   The minimumThis option specifies the MTU to use on this interface.  The minimum
 legal value for the MTU is 68.  legal value for the MTU is 68.
 .RE  .RE
 .PP  .PP
Line 610  list of RFC 1001/1002 NBDD servers listed in order of  Line 611  list of RFC 1001/1002 NBDD servers listed in order of 
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 The NetBIOS name server (NBNS) option specifies a list of RFC  The NetBIOS name server (NBNS) option specifies a list of RFC
1001/1002 NBNS name servers listed in order of preference.   NetBIOS1001/1002 NBNS name servers listed in order of preference.  NetBIOS
Name Service is currently more commonly referred to as WINS.   WINSName Service is currently more commonly referred to as WINS.  WINS
 servers can be specified using the netbios-name-servers option.  servers can be specified using the netbios-name-servers option.
 .RE  .RE
 .PP  .PP
Line 739  use. Line 740  use.
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 A sequence of suboptions for NetWare/IP clients - see RFC2242 for  A sequence of suboptions for NetWare/IP clients - see RFC2242 for
details.   Normally this option is set by specifying specificdetails.  Normally this option is set by specifying specific
 NetWare/IP suboptions - see the NETWARE/IP SUBOPTIONS section for more  NetWare/IP suboptions - see the NETWARE/IP SUBOPTIONS section for more
 information.  information.
 .RE  .RE
Line 843  client's subnet.  Routers should be listed in order of Line 844  client's subnet.  Routers should be listed in order of
 .PP  .PP
 This option specifies two things: the IP addresses of one or more  This option specifies two things: the IP addresses of one or more
 Service Location Protocol Directory Agents, and whether the use of  Service Location Protocol Directory Agents, and whether the use of
these addresses is mandatory.   If the initial boolean value is true,these addresses is mandatory.  If the initial boolean value is true,
the SLP agent should just use the IP addresses given.   If the valuethe SLP agent should just use the IP addresses given.  If the value
 is false, the SLP agent may additionally do active or passive  is false, the SLP agent may additionally do active or passive
 multicast discovery of SLP agents (see RFC2165 for details).  multicast discovery of SLP agents (see RFC2165 for details).
 .PP  .PP
Line 869  otherwise, it may use its own static configuration in  Line 870  otherwise, it may use its own static configuration in 
 the list provided in this option.  the list provided in this option.
 .PP  .PP
 The text string should be a comma-separated list of scopes that the  The text string should be a comma-separated list of scopes that the
SLP agent should use.   It may be omitted, in which case the SLP AgentSLP agent should use.  It may be omitted, in which case the SLP Agent
 will use the aggregated list of scopes of all directory agents known  will use the aggregated list of scopes of all directory agents known
 to the SLP agent.  to the SLP agent.
 .RE  .RE
Line 900  the destination. Line 901  the destination.
 The default route (0.0.0.0) is an illegal destination for a static  The default route (0.0.0.0) is an illegal destination for a static
 route.  To specify the default route, use the  route.  To specify the default route, use the
 .B routers  .B routers
option.   Also, please note that this option is not intended foroption.  Also, please note that this option is not intended for
classless IP routing - it does not include a subnet mask.   Sinceclassless IP routing - it does not include a subnet mask.  Since
 classless IP routing is now the most widely deployed routing standard,  classless IP routing is now the most widely deployed routing standard,
 this option is virtually useless, and is not implemented by any of the  this option is virtually useless, and is not implemented by any of the
 popular DHCP clients, for example the Microsoft DHCP client.  popular DHCP clients, for example the Microsoft DHCP client.
Line 984  connections unless specifically requested by an applic Line 985  connections unless specifically requested by an applic
 .PP  .PP
 This option is used to identify a TFTP server and, if supported by the  This option is used to identify a TFTP server and, if supported by the
 client, should have the same effect as the \fBserver-name\fR  client, should have the same effect as the \fBserver-name\fR
declaration.   BOOTP clients are unlikely to support this option.declaration.  BOOTP clients are unlikely to support this option.
 Some DHCP clients will support it, and others actually require it.  Some DHCP clients will support it, and others actually require it.
 .RE  .RE
 .PP  .PP
Line 1023  servers can accept either HTTP 1.1 or SSLv3 connection Line 1024  servers can accept either HTTP 1.1 or SSLv3 connection
 includes a URL that does not contain a port component, the normal  includes a URL that does not contain a port component, the normal
 default port is assumed (i.e., port 80 for http and port 443 for  default port is assumed (i.e., port 80 for http and port 443 for
 https).  If the list includes a URL that does not contain a path  https).  If the list includes a URL that does not contain a path
component, the path /uap is assumed.   If more than one URL iscomponent, the path /uap is assumed.  If more than one URL is
 specified in this list, the URLs are separated by spaces.  specified in this list, the URLs are separated by spaces.
 .RE  .RE
 .PP  .PP
Line 1031  specified in this list, the URLs are separated by spac Line 1032  specified in this list, the URLs are separated by spac
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 This option is used by some DHCP clients as a way for users to  This option is used by some DHCP clients as a way for users to
specify identifying information to the client.   This can be used in aspecify identifying information to the client.  This can be used in a
 similar way to the vendor-class-identifier option, but the value of  similar way to the vendor-class-identifier option, but the value of
the option is specified by the user, not the vendor.   Most recentthe option is specified by the user, not the vendor.  Most recent
 DHCP clients have a way in the user interface to specify the value for  DHCP clients have a way in the user interface to specify the value for
 this identifier, usually as a text string.  this identifier, usually as a text string.
 .RE  .RE
Line 1044  this identifier, usually as a text string. Line 1045  this identifier, usually as a text string.
 This option is used by some DHCP clients to identify the vendor  This option is used by some DHCP clients to identify the vendor
 type and possibly the configuration of a DHCP client.  The information  type and possibly the configuration of a DHCP client.  The information
 is a string of bytes whose contents are specific to the vendor and are  is a string of bytes whose contents are specific to the vendor and are
not specified in a standard.   To see what vendor class identifiernot specified in a standard.  To see what vendor class identifier
 clients are sending, you can write the following in your DHCP server  clients are sending, you can write the following in your DHCP server
 configuration file:  configuration file:
 .nf  .nf
Line 1063  set vendor-string = "SUNW.Ultra-5_10"; Line 1064  set vendor-string = "SUNW.Ultra-5_10";
 The vendor-class-identifier option is normally used by the DHCP server  The vendor-class-identifier option is normally used by the DHCP server
 to determine the options that are returned in the  to determine the options that are returned in the
 .B vendor-encapsulated-options  .B vendor-encapsulated-options
option.   Please see the VENDOR ENCAPSULATED OPTIONS section later in thisoption.  Please see the VENDOR ENCAPSULATED OPTIONS section later in this
 manual page for further information.  manual page for further information.
 .RE  .RE
 .PP  .PP
Line 1072  manual page for further information. Line 1073  manual page for further information.
 .PP  .PP
 The \fBvendor-encapsulated-options\fR option can contain either a  The \fBvendor-encapsulated-options\fR option can contain either a
 single vendor-specific value or one or more vendor-specific  single vendor-specific value or one or more vendor-specific
suboptions.   This option is not normally specified in the DHCP serversuboptions.  This option is not normally specified in the DHCP server
 configuration file - instead, a vendor class is defined for each  configuration file - instead, a vendor class is defined for each
 vendor, vendor class suboptions are defined, values for those  vendor, vendor class suboptions are defined, values for those
 suboptions are defined, and the DHCP server makes up a response on  suboptions are defined, and the DHCP server makes up a response on
Line 1115  should be listed in order of preference. Line 1116  should be listed in order of preference.
 .SH RELAY AGENT INFORMATION OPTION  .SH RELAY AGENT INFORMATION OPTION
 An IETF draft, draft-ietf-dhc-agent-options-11.txt, defines a series  An IETF draft, draft-ietf-dhc-agent-options-11.txt, defines a series
 of encapsulated options that a relay agent can add to a DHCP packet  of encapsulated options that a relay agent can add to a DHCP packet
when relaying it to the DHCP server.   The server can then makewhen relaying it to the DHCP server.  The server can then make
 address allocation decisions (or whatever other decisions it wants)  address allocation decisions (or whatever other decisions it wants)
based on these options.   The server also returns these options in anybased on these options.  The server also returns these options in any
 replies it sends through the relay agent, so that the relay agent can  replies it sends through the relay agent, so that the relay agent can
 use the information in these options for delivery or accounting  use the information in these options for delivery or accounting
 purposes.  purposes.
 .PP  .PP
The current draft defines two options.   To referenceThe current draft defines two options.  To reference
 these options in the dhcp server, specify the option space name,  these options in the dhcp server, specify the option space name,
"agent", followed by a period, followed by the option name.   It is"agent", followed by a period, followed by the option name.  It is
 not normally useful to define values for these options in the server,  not normally useful to define values for these options in the server,
although it is permissible.   These options are not supported in thealthough it is permissible.  These options are not supported in the
 client.  client.
 .PP  .PP
 .B option \fBagent.circuit-id\fR \fIstring\fR\fB;\fR  .B option \fBagent.circuit-id\fR \fIstring\fR\fB;\fR
Line 1135  client. Line 1136  client.
 The circuit-id suboption encodes an agent-local identifier of the  The circuit-id suboption encodes an agent-local identifier of the
 circuit from which a DHCP client-to-server packet was received.  It is  circuit from which a DHCP client-to-server packet was received.  It is
 intended for use by agents in relaying DHCP responses back to the  intended for use by agents in relaying DHCP responses back to the
proper circuit.   The format of this option is currently defined to beproper circuit.  The format of this option is currently defined to be
 vendor-dependent, and will probably remain that way, although the  vendor-dependent, and will probably remain that way, although the
 current draft allows for for the possibility of standardizing the  current draft allows for for the possibility of standardizing the
 format in the future.  format in the future.
Line 1145  format in the future. Line 1146  format in the future.
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 The remote-id suboption encodes information about the remote host end  The remote-id suboption encodes information about the remote host end
of a circuit.   Examples of what it might contain include caller IDof a circuit.  Examples of what it might contain include caller ID
 information, username information, remote ATM address, cable modem ID,  information, username information, remote ATM address, cable modem ID,
and similar things.   In principal, the meaning is not well-specified,and similar things.  In principal, the meaning is not well-specified,
 and it should generally be assumed to be an opaque object that is  and it should generally be assumed to be an opaque object that is
 administratively guaranteed to be unique to a particular remote end of  administratively guaranteed to be unique to a particular remote end of
 a circuit.  a circuit.
Line 1182  appropriate. Line 1183  appropriate.
 .SH THE CLIENT FQDN SUBOPTIONS  .SH THE CLIENT FQDN SUBOPTIONS
 The Client FQDN option, currently defined in the Internet Draft  The Client FQDN option, currently defined in the Internet Draft
 draft-ietf-dhc-fqdn-option-00.txt is not a standard yet, but is in  draft-ietf-dhc-fqdn-option-00.txt is not a standard yet, but is in
sufficiently wide use already that we have implemented it.   Due tosufficiently wide use already that we have implemented it.  Due to
 the complexity of the option format, we have implemented it as a  the complexity of the option format, we have implemented it as a
suboption space rather than a single option.   In general thissuboption space rather than a single option.  In general this
 option should not be configured by the user - instead it should be  option should not be configured by the user - instead it should be
 used as part of an automatic DNS update system.  used as part of an automatic DNS update system.
 .PP  .PP
Line 1192  used as part of an automatic DNS update system. Line 1193  used as part of an automatic DNS update system.
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 When the client sends this, if it is true, it means the client will not  When the client sends this, if it is true, it means the client will not
attempt to update its A record.   When sent by the server to the client,attempt to update its A record.  When sent by the server to the client,
 it means that the client \fIshould not\fR update its own A record.  it means that the client \fIshould not\fR update its own A record.
 .RE  .RE
 .PP  .PP
Line 1200  it means that the client \fIshould not\fR update its o Line 1201  it means that the client \fIshould not\fR update its o
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 When the client sends this to the server, it is requesting that the server  When the client sends this to the server, it is requesting that the server
update its A record.   When sent by the server, it means that the serverupdate its A record.  When sent by the server, it means that the server
 has updated (or is about to update) the client's A record.  has updated (or is about to update) the client's A record.
 .RE  .RE
 .PP  .PP
Line 1208  has updated (or is about to update) the client's A rec Line 1209  has updated (or is about to update) the client's A rec
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 If true, this indicates that the domain name included in the option is  If true, this indicates that the domain name included in the option is
encoded in DNS wire format, rather than as plain ASCII text.   The clientencoded in DNS wire format, rather than as plain ASCII text.  The client
 normally sets this to false if it doesn't support DNS wire format in the  normally sets this to false if it doesn't support DNS wire format in the
FQDN option.   The server should always send back the same value that theFQDN option.  The server should always send back the same value that the
client sent.   When this value is set on the configuration side, it controlsclient sent.  When this value is set on the configuration side, it controls
 the format in which the \fIfqdn.fqdn\fR suboption is encoded.  the format in which the \fIfqdn.fqdn\fR suboption is encoded.
 .RE  .RE
 .PP  .PP
Line 1228  The values of these fields are those defined in the DN Line 1229  The values of these fields are those defined in the DN
 .B option fqdn.fqdn \fItext\fB;  .B option fqdn.fqdn \fItext\fB;
 .RS 0.25i  .RS 0.25i
 .PP  .PP
Specifies the domain name that the client wishes to use.   This can be aSpecifies the domain name that the client wishes to use.  This can be a
fully-qualified domain name, or a single label.   If there is no trailingfully-qualified domain name, or a single label.  If there is no trailing
 \'.\' character in the name, it is not fully-qualified, and the server will  \'.\' character in the name, it is not fully-qualified, and the server will
 generally update that name in some locally-defined domain.  generally update that name in some locally-defined domain.
 .RE  .RE
Line 1251  This option should never be set, but it can be read ba Line 1252  This option should never be set, but it can be read ba
 and \fBconfig-option\fR operators in an expression, in which case it returns  and \fBconfig-option\fR operators in an expression, in which case it returns
 all labels after the first label in the \fBfqdn.fqdn\fR suboption - for  all labels after the first label in the \fBfqdn.fqdn\fR suboption - for
 example, if the value of \fBfqdn.fqdn\fR is "foo.example.com.",  example, if the value of \fBfqdn.fqdn\fR is "foo.example.com.",
then \fBfqdn.hostname\fR will be "example.com.".   If this suboption valuethen \fBfqdn.hostname\fR will be "example.com.".  If this suboption value
 is not set, it means that an unqualified name was sent in the fqdn option,  is not set, it means that an unqualified name was sent in the fqdn option,
 or that no fqdn option was sent at all.  or that no fqdn option was sent at all.
 .RE  .RE
Line 1271  The following options can be specified: Line 1272  The following options can be specified:
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 If true, the client should use the NetWare Nearest Server Query to  If true, the client should use the NetWare Nearest Server Query to
locate a NetWare/IP server.   The behaviour of the Novell client iflocate a NetWare/IP server.  The behaviour of the Novell client if
 this suboption is false, or is not present, is not specified.  this suboption is false, or is not present, is not specified.
 .PP  .PP
 .RE  .RE
Line 1310  server at startup. Line 1311  server at startup.
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 If true, the NetWare/IP client should support NetWare/IP version 1.1  If true, the NetWare/IP client should support NetWare/IP version 1.1
compatibility.   This is only needed if the client will be contactingcompatibility.  This is only needed if the client will be contacting
 Netware/IP version 1.1 servers.  Netware/IP version 1.1 servers.
 .RE  .RE
 .PP  .PP
Line 1318  Netware/IP version 1.1 servers. Line 1319  Netware/IP version 1.1 servers.
 .RS 0.25i  .RS 0.25i
 .PP  .PP
 Specifies the IP address of the Primary Domain SAP/RIP Service server  Specifies the IP address of the Primary Domain SAP/RIP Service server
(DSS) for this NetWare/IP domain.   The NetWare/IP administration(DSS) for this NetWare/IP domain.  The NetWare/IP administration
 utility uses this value as Primary DSS server when configuring a  utility uses this value as Primary DSS server when configuring a
 secondary DSS server.  secondary DSS server.
 .RE  .RE
Line 1695  The \fBlq-client-link\fR option is used internally by  Line 1696  The \fBlq-client-link\fR option is used internally by 
 .RE  .RE
 .SH DEFINING NEW OPTIONS  .SH DEFINING NEW OPTIONS
 The Internet Systems Consortium DHCP client and server provide the  The Internet Systems Consortium DHCP client and server provide the
capability to define new options.   Each DHCP option has a name, acapability to define new options.  Each DHCP option has a name, a
code, and a structure.   The name is used by you to refer to thecode, and a structure.  The name is used by you to refer to the
option.   The code is a number, used by the DHCP server and client tooption.  The code is a number, used by the DHCP server and client to
refer to an option.   The structure describes what the contents of anrefer to an option.  The structure describes what the contents of an
 option looks like.  option looks like.
 .PP  .PP
 To define a new option, you need to choose a name for it that is not  To define a new option, you need to choose a name for it that is not
 in use for some other option - for example, you can't use "host-name"  in use for some other option - for example, you can't use "host-name"
 because the DHCP protocol already defines a host-name option, which is  because the DHCP protocol already defines a host-name option, which is
documented earlier in this manual page.   If an option name doesn'tdocumented earlier in this manual page.  If an option name doesn't
 appear in this manual page, you can use it, but it's probably a good  appear in this manual page, you can use it, but it's probably a good
 idea to put some kind of unique string at the beginning so you can be  idea to put some kind of unique string at the beginning so you can be
sure that future options don't take your name.   For example, yousure that future options don't take your name.  For example, you
 might define an option, "local-host-name", feeling some confidence  might define an option, "local-host-name", feeling some confidence
 that no official DHCP option name will ever start with "local".  that no official DHCP option name will ever start with "local".
 .PP  .PP
Line 1723  a vendor-documented option code in either the new or o Line 1724  a vendor-documented option code in either the new or o
 spaces, please contact your vendor and inform them about rfc3942.  spaces, please contact your vendor and inform them about rfc3942.
 .PP  .PP
 The structure of an option is simply the format in which the option  The structure of an option is simply the format in which the option
data appears.   The ISC DHCP server currently supports a few simpledata appears.  The ISC DHCP server currently supports a few simple
 types, like integers, booleans, strings and IP addresses, and it also  types, like integers, booleans, strings and IP addresses, and it also
 supports the ability to define arrays of single types or arrays of  supports the ability to define arrays of single types or arrays of
 fixed sequences of types.  fixed sequences of types.
Line 1743  The values of Line 1744  The values of
 and  and
 .I new-code  .I new-code
 should be the name you have chosen for the new option and the code you  should be the name you have chosen for the new option and the code you
have chosen.   Thehave chosen.  The
 .I definition  .I definition
 should be the definition of the structure of the option.  should be the definition of the structure of the option.
 .PP  .PP
Line 1760  The following simple option type definitions are suppo Line 1761  The following simple option type definitions are suppo
 .B ;  .B ;
 .PP  .PP
 An option of type boolean is a flag with a value of either on or off  An option of type boolean is a flag with a value of either on or off
(or true or false).   So an example use of the boolean type would be:(or true or false).  So an example use of the boolean type would be:
 .nf  .nf
   
 option use-zephyr code 180 = boolean;  option use-zephyr code 180 = boolean;
Line 1780  option use-zephyr on; Line 1781  option use-zephyr on;
 .B ;  .B ;
 .PP  .PP
 The \fIsign\fR token should either be blank, \fIunsigned\fR  The \fIsign\fR token should either be blank, \fIunsigned\fR
or \fIsigned\fR.   The width can be either 8, 16 or 32, and refers toor \fIsigned\fR.  The width can be either 8, 16 or 32, and refers to
the number of bits in the integer.   So for example, the following twothe number of bits in the integer.  So for example, the following two
 lines show a definition of the sql-connection-max option and its use:  lines show a definition of the sql-connection-max option and its use:
 .nf  .nf
   
Line 1838  option dhcp6.some-server 3ffe:bbbb:aaaa:aaaa::1, 3ffe: Line 1839  option dhcp6.some-server 3ffe:bbbb:aaaa:aaaa::1, 3ffe:
 .B text  .B text
 .B ;  .B ;
 .PP  .PP
An option whose type is text will encode an ASCII text string.   ForAn option whose type is text will encode an ASCII text string.  For
 example:  example:
 .nf  .nf
   
Line 1860  option sql-default-connection-name "PRODZA"; Line 1861  option sql-default-connection-name "PRODZA";
 An option whose type is a data string is essentially just a collection  An option whose type is a data string is essentially just a collection
 of bytes, and can be specified either as quoted text, like the text  of bytes, and can be specified either as quoted text, like the text
 type, or as a list of hexadecimal contents separated by colons whose  type, or as a list of hexadecimal contents separated by colons whose
values must be between 0 and FF.   For example:values must be between 0 and FF.  For example:
 .nf  .nf
   
 option sql-identification-token code 195 = string;  option sql-identification-token code 195 = string;
Line 1912  appropriate for direct use in eg /etc/resolv.conf. Line 1913  appropriate for direct use in eg /etc/resolv.conf.
 .B ;  .B ;
 .PP  .PP
 An option whose type is \fBencapsulate\fR will encapsulate the  An option whose type is \fBencapsulate\fR will encapsulate the
contents of the option space specified in \fIidentifier\fR.   Examplescontents of the option space specified in \fIidentifier\fR.  Examples
 of encapsulated options in the DHCP protocol as it currently exists  of encapsulated options in the DHCP protocol as it currently exists
 include the vendor-encapsulated-options option, the netware-suboptions  include the vendor-encapsulated-options option, the netware-suboptions
 option and the relay-agent-information option.  option and the relay-agent-information option.
Line 1929  option local.demo "demo"; Line 1930  option local.demo "demo";
 .PP  .PP
 Options can contain arrays of any of the above types except for the  Options can contain arrays of any of the above types except for the
 text and data string types, which aren't currently supported in  text and data string types, which aren't currently supported in
arrays.   An example of an array definition is as follows:arrays.  An example of an array definition is as follows:
 .nf  .nf
   
 option kerberos-servers code 200 = array of ip-address;  option kerberos-servers code 200 = array of ip-address;
Line 1939  option kerberos-servers 10.20.10.1, 10.20.11.1; Line 1940  option kerberos-servers 10.20.10.1, 10.20.11.1;
 .B RECORDS  .B RECORDS
 .PP  .PP
 Options can also contain data structures consisting of a sequence of  Options can also contain data structures consisting of a sequence of
data types, which is sometimes called a record type.   For example:data types, which is sometimes called a record type.  For example:
 .nf  .nf
   
 option contrived-001 code 201 = { boolean, integer 32, text };  option contrived-001 code 201 = { boolean, integer 32, text };
Line 1972  options according to each Vendor's specifications.  Yo Line 1973  options according to each Vendor's specifications.  Yo
 to your vendor's documentation in order to form options to their  to your vendor's documentation in order to form options to their
 specification.  specification.
 .PP  .PP
The value of these options can be set in one of two ways.   The firstThe value of these options can be set in one of two ways.  The first
 way is to simply specify the data directly, using a text string or a  way is to simply specify the data directly, using a text string or a
 colon-separated list of hexadecimal values.  For help in forming these  colon-separated list of hexadecimal values.  For help in forming these
 strings, please refer to \fBRFC2132\fR for the DHCPv4 \fBVendor Specific  strings, please refer to \fBRFC2132\fR for the DHCPv4 \fBVendor Specific
Line 1999  option dhcp6.vendor-opts Line 2000  option dhcp6.vendor-opts
 .fi  .fi
 .PP  .PP
 The second way of setting the value of these options is to have the DHCP  The second way of setting the value of these options is to have the DHCP
server generate a vendor-specific option buffer.   To do this, youserver generate a vendor-specific option buffer.  To do this, you
 must do four things: define an option space, define some options in  must do four things: define an option space, define some options in
 that option space, provide values for them, and specify that that   that option space, provide values for them, and specify that that 
 option space should be used to generate the relevant option.  option space should be used to generate the relevant option.
Line 2043  space.  Previous versions of ISC DHCP (up to and inclu Line 2044  space.  Previous versions of ISC DHCP (up to and inclu
 this value was fixed at 9973.  this value was fixed at 9973.
 .PP  .PP
 The name can then be used in option definitions, as described earlier in  The name can then be used in option definitions, as described earlier in
this document.   For example:this document.  For example:
 .nf  .nf
   
 option space SUNW code width 1 length width 1 hash size 3;  option space SUNW code width 1 length width 1 hash size 3;
Line 2071  option vsio.docsis code 4491 = encapsulate docsis; Line 2072  option vsio.docsis code 4491 = encapsulate docsis;
 .fi  .fi
 Once you have defined an option space and the format of some options,  Once you have defined an option space and the format of some options,
 you can set up scopes that define values for those options, and you  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 handlecan say when to use them.  For example, suppose you want to handle
two different classes of clients.   Using the option space definitiontwo different classes of clients.  Using the option space definition
 shown in the previous example, you can send different option values to  shown in the previous example, you can send different option values to
 different clients based on the vendor-class-identifier option that the  different clients based on the vendor-class-identifier option that the
 clients send, as follows:  clients send, as follows:

Removed from v.1.1  
changed lines
  Added in v.1.1.1.1


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>