From: Marcin Siodelski Date: Mon, 29 Jun 2015 09:46:14 +0000 (+0200) Subject: [3846] Revised DHCPv6 option definitions in the kea-guide. X-Git-Tag: trac3771_base~7^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b6d9fcd739f2df5f5782213e9de7dbd5a44840a4;p=thirdparty%2Fkea.git [3846] Revised DHCPv6 option definitions in the kea-guide. --- diff --git a/doc/guide/dhcp6-srv.xml b/doc/guide/dhcp6-srv.xml index 01f1771046..89aa135336 100644 --- a/doc/guide/dhcp6-srv.xml +++ b/doc/guide/dhcp6-srv.xml @@ -888,10 +888,14 @@ temporarily override a list of interface names and listen on all interfaces. rapid-commit14emptyfalse user-class15binaryfalse vendor-class16recordfalse +--> + vendor-opts17uint32false + +--> sip-server-dns21fqdntrue sip-server-addr22ipv6-addresstrue dns-servers23ipv6-addresstrue @@ -1046,27 +1050,27 @@ temporarily override a list of interface names and listen on all interfaces.
DHCPv6 vendor specific options - 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. + Currently there are two option spaces defined for the DHCPv6 + daemon: "dhcp6" (for top level DHCPv6 options) and "vendor-opts-space", + which is empty by default, but options can be defined in it. + Those options will be carried in the Vendor-specific + Information option (code 17). 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. "Dhcp6": { "option-def": [ { "name": "foo", "code": 1, - "space": "vendor-encapsulated-options-space", + "space": "vendor-opts-space", "type": "record", "array": false, "record-types": "ipv6-address, uint16, string", - "encapsulates": "" + "encapsulate": "" } ], ... @@ -1079,26 +1083,33 @@ temporarily override a list of interface names and listen on all interfaces. "option-data": [ { "name": "foo", - "space": "vendor-encapsulated-options-space", - "code": 1, - "csv-format": true, + "space": "vendor-opts-space", "data": "2001:db8:1::10, 123, Hello World" }, ... ], ... } - We should also define values for the vendor-opts, that will convey our - option foo. + We should also define a value (enterprise-number) for the + Vendor-specific Information option, that conveys our option "foo". "Dhcp6": { "option-data": [ ..., { - "name": "vendor-encapsulated-options", - "space": "dhcp6", - "code": 17, - "csv-format": true, + "name": "vendor-opts", + "data": "12345" + } + ], + ... +} + Alternatively, the option can be specified using its code. + +"Dhcp6": { + "option-data": [ + ..., + { + "code": 17, "data": "12345" } ], @@ -1184,36 +1195,25 @@ should include options from the isc option space: "option-data": [ { "name": "subopt1", - "space": "isc", "code": 1, - "csv-format": true, + "space": "isc", "data": "2001:db8::abcd" }, } "name": "subopt2", - "space": "isc", "code": 2, - "csv-format": true, + "space": "isc", "data": "Hello world" }, { "name": "container", - "space": "dhcp6", "code": 102, - "csv-format": true, - "data": "" + "space": "dhcp6" } ], ... } - - Even though the "container" option does not carry any data except - sub-options, the "data" field must be explicitly set to an empty value. - This is required because in the current version of Kea, the default - configuration values are not propagated to the configuration parsers: if the - "data" is not set the parser will assume that this parameter is not - specified and an error will be reported. Note that it is possible to create an option which carries some data