From: Stephen Morris Date: Tue, 5 Feb 2013 12:24:42 +0000 (+0000) Subject: [2657] More editing of the DHCP sections of the BIND 10 Guide X-Git-Tag: bind10-1.0.0-rc-release~29^2~1^2~5 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3c200a3decdd5bbc30bbdb9c81f9f206eda98ad9;p=thirdparty%2Fkea.git [2657] More editing of the DHCP sections of the BIND 10 Guide --- diff --git a/doc/guide/bind10-guide.xml b/doc/guide/bind10-guide.xml index 8b4fc21e48..a64b0f52ec 100644 --- a/doc/guide/bind10-guide.xml +++ b/doc/guide/bind10-guide.xml @@ -3609,7 +3609,6 @@ Dhcp4/subnet4 [] list (default) network configurations. If you want to avoid this, please use the "min-max" notation. -
Standard DHCPv4 options @@ -3652,7 +3651,7 @@ Dhcp4/subnet4 [] list (default) - Options can also be configured as hex values. If csv-format is + Options can also be configured as hexadecimal values. If csv-format is set to false, option data must be specified as a hex string. The following commands configure the domain-name-servers option for all subnets with the following addresses: 192.0.3.1 and 192.0.3.2. @@ -3898,13 +3897,15 @@ Dhcp4/subnet4 [] list (default)
DHCPv4 vendor specific options - Currently there are three option spaces defined: dhcp4 (to - be used in DHCPv4 daemon), dhcp6, and vendor-opts-space. The last-mentioned - is empty by default but options can be defined in it: those options - are called vendor-specific information options. The following examples - show how to define an option "foo" with code 1 that consists of IPv4 address, - unsigned 16 bit integer and a string. The "foo" option is conveyed in a - vendor specific information option. + + Currently there are three option spaces defined: dhcp4 (to + be used in DHCPv4 daemon) and dhcp6 (for the DHCPv6 daemon); there + is also vendor-opts-space, which is empty by default, but options + can be defined in it. Those options are called vendor-specific + information options. The following examples show how to define + an option "foo" with code 1 that consists of an IPv4 address, an + unsigned 16 bit integer and a string. The "foo" option is conveyed + in a vendor specific information option. The first step is to define the format of the option: @@ -3931,6 +3932,7 @@ Dhcp4/subnet4 [] list (default) > config set Dhcp4/option-data[0]/data "192.0.2.3, 123, Hello World" > config commit We also set up a dummy value for vendor-opts, the option that conveys our sub-option "foo". + This is required else the option will not be included in messages sent to the client. > config add Dhcp4/option-data > config set Dhcp4/option-data[1]/name "vendor-encapsulated-options" @@ -3954,6 +3956,7 @@ Dhcp4/subnet4 [] list (default)
+ Nested DHCPv4 options (custom option spaces) It is sometimes useful to define completely new option spaces. This is useful if the user wants his new option to @@ -4039,7 +4042,7 @@ Dhcp4/subnet4 [] list (default) client.
- +
Server Identifier in DHCPv4 @@ -4136,7 +4139,9 @@ Dhcp4/renew-timer 1000 integer (default) Address rebinding (REBIND) and duplication report (DECLINE) are not supported yet. - + + DNS Update is not yet supported. +
@@ -4170,17 +4175,7 @@ Dhcp4/renew-timer 1000 integer (default) > config commit - - To change one of the parameters, simply follow - the usual bindctl procedure. For example, to make the - leases longer, change their valid-lifetime parameter: - -> config set Dhcp6/valid-lifetime 7200 -> config commit - Please note that most Dhcp6 parameters are of global scope - and apply to all defined subnets, unless they are overridden on a - per-subnet basis. - + During start-up the server will detect available network interfaces @@ -4499,8 +4494,8 @@ Dhcp6/subnet6/ list sip-server-addr22ipv6-addresstrue dns-servers23ipv6-addresstrue domain-search24fqdntrue -ia-pd25recordfalse -iaprefix26recordfalse + + nis-servers27ipv6-addresstrue nisp-servers28ipv6-addresstrue nis-domain-name29fqdntrue @@ -4579,7 +4574,12 @@ Dhcp6/subnet6/ list > config set Dhcp6/option-def[0]/record-types "ipv6-address, uint16, string" > config set Dhcp6/option-def[0]/encapsulate "" - Its values can be later defined as follows: + The "type" is set to "record" to indicate that the option contains + multiple values of different types. These types are given as a comma-separated + list in the "record-types" field and should be those listed in . + + + The values of the option are set as follows: > config add Dhcp6/option-data > config set Dhcp6/option-data[0]/name "bar" @@ -4589,19 +4589,24 @@ Dhcp6/subnet6/ list > config set Dhcp6/option-data[0]/data "2001:db8:1::10, 123, Hello World" > config commit + "csv-format" is set "true" to indicate that the "data" field comprises a command-separated + list of values. The values in the "data" must correspond to the types set in + the "record-types" field of the option definition.
DHCPv6 vendor specific options - Currently there are three option spaces defined: dhcp4 (to - be used in DHCPv4 daemon) and dhcp6; there is also vendor-opts-space, - which is empty by default, but options can be defined in it. Those options - are called vendor-specific information options. The following examples - show how to define an option "foo" with code 1 that consists of IPv6 address, - unsigned 16 bit integer and a string. The "foo" option is conveyed in a - vendor specific information option. This option comprises a single - uint32 value that is set to "12345". The sub-option "foo" follows - the data field holding this value. + + Currently there are three option spaces defined: dhcp4 (to be used + in DHCPv4 daemon) and dhcp6 (for the DHCPv6 daemon); there is also + vendor-opts-space, which is empty by default, but options can be + defined in it. Those options are called vendor-specific information + options. The following examples show how to define an option "foo" + with code 1 that consists of an IPv6 address, an unsigned 16 bit integer + and a string. The "foo" option is conveyed in a vendor specific + information option. This option comprises a single uint32 value + that is set to "12345". The sub-option "foo" follows the data + field holding this value. > config add Dhcp6/option-def > config set Dhcp6/option-def[0]/name "foo" @@ -4641,10 +4646,12 @@ Dhcp6/subnet6/ list convey sub-options that use separate numbering scheme, for example sub-options with codes 1 and 2. Those option codes conflict with standard DHCPv6 options, so a separate option - space must be defined. Let's assume that we want to have a - DHCPv6 option with code 102 that conveys two sub-options with - codes 1 and 2. This could be achieved with the following examples. - First we need to define those new sub-options: + space must be defined. + + + Assume that we want to have a DHCPv6 option called "container" + with code 102 that conveys two sub-options with codes 1 and 2. + First we need to define the new sub-options: > config add Dhcp6/option-def > config set Dhcp6/option-def[0]/name "subopt1" @@ -4666,6 +4673,10 @@ Dhcp6/subnet6/ list > config set Dhcp6/option-def[1]/encapsulate "" > config commit + Note that we have defined the options to belong to a new option space + (in this case, "isc"). + + The next step is to define a regular DHCPv6 option and specify that it should include options from isc option space: @@ -4679,8 +4690,11 @@ should include options from isc option space: > config set Dhcp6/option-def[2]/encapsulate "isc" > config commit - -Finally, we should specify values for those new options: + The name of the option space in which the sub-options are defined + is set in the "encapsulates" field. + + + Finally, we can set values for the new options: > config add Dhcp6/option-data > config set Dhcp6/option-data[0]/name "subopt1" @@ -4714,9 +4728,9 @@ Finally, we should specify values for those new options:
Subnet Selection - The DHCPv6 server may receive requests from local (connected to the same - subnet as the server) and remote (connecting via relays) - clients. + The DHCPv6 server may receive requests from local (connected + to the same subnet as the server) and remote (connecting via + relays) clients. Currently relayed DHCPv6 traffic is not supported. The server will @@ -4754,7 +4768,7 @@ Finally, we should specify values for those new options: The DHCPv6 protocol uses a "server identifier" (also known as a DUID) for clients to be able to discriminate between several servers present on the same link. There are several types of - DUIDs defined, but RFC 3315 instructs servers to use DUID-LLT if + DUIDs defined, but RFC 3315 instructs servers to use DUID-LLT if possible. This format consists of a link-layer (MAC) address and a timestamp. When started for the first time, the DHCPv6 server will automatically generate such a DUID and store the chosen value to @@ -4777,7 +4791,7 @@ Finally, we should specify values for those new options:
- Supported DHCPv6 Standards + Supported Standards The following standards and draft standards are currently supported: