From: Tomek Mrugalski Date: Mon, 23 Oct 2017 18:06:16 +0000 (+0100) Subject: [5068] Doc updated X-Git-Tag: Kea-1.3.0~2^2~10^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=98dc6997b2667eff8dc5b50172ad4c8415e3bd3a;p=thirdparty%2Fkea.git [5068] Doc updated - added examples for binary options - binary renamed to hex - leasequery options clearly marked as not really supported --- diff --git a/doc/examples/kea4/multiple-options.json b/doc/examples/kea4/multiple-options.json index efbc7a9cf5..6a45c3ef3f 100644 --- a/doc/examples/kea4/multiple-options.json +++ b/doc/examples/kea4/multiple-options.json @@ -38,7 +38,6 @@ "subnet4": [ { "subnet": "192.0.2.0/24", - "interface": "ethX", "option-data": [ // When specifying options, you typically need to specify // one of (name or code) and data. The full option specification @@ -51,7 +50,7 @@ // { // "name": "domain-name-servers", // "code": 6, - // "csv-format": "true", + // "csv-format": true, // "space": "dhcp4", // "data": "192.0.2.1, 192.0.2.2" // } @@ -100,6 +99,16 @@ "name": "domain-search", "data": "mydomain.example.com, example.com" }, + + // Options can also be specified using hexadecimal format. + // This should be avoided if possible, because Kea ability to + // validate correctness is limited when using hex values. + { + "name": "broadcast-address", + "csv-format": false, + "data": "ffff8000" + }, + // String options that have a comma in their values need to have // it escaped (i.e. each comma is preceded by two backslashes). // That's because commas are reserved for separating fields in diff --git a/doc/examples/kea6/multiple-options.json b/doc/examples/kea6/multiple-options.json index 077aef569b..6fab01c443 100644 --- a/doc/examples/kea6/multiple-options.json +++ b/doc/examples/kea6/multiple-options.json @@ -56,7 +56,7 @@ // { // "name": "dns-servers", // "code": 23, - // "csv-format": "true", + // "csv-format": true, // "space": "dhcp6", // "data": "2001:db8:2::45, 2001:db8:2::100" // } @@ -78,6 +78,15 @@ "data": "2001:db8:1:0:ff00::1" }, + // Options can also be specified using hexadecimal format. + // This should be avoided if possible, because Kea ability to + // validate correctness is limited when using hex values. + { + "name": "sntp-servers", + "csv-format": false, + "data": "20010db8000000000000000000000001" + }, + // String options that have a comma in their values need to have // it escaped (i.e. each comma is preceded by two backslashes). // That's because commas are reserved for separating fields in @@ -144,7 +153,7 @@ "option-data": [ { "code": 12, - "data": "3001:cafe::12:" + "data": "3001:cafe::12" } ] } diff --git a/doc/guide/dhcp4-srv.xml b/doc/guide/dhcp4-srv.xml index 0d7d95444a..64585a89c9 100644 --- a/doc/guide/dhcp4-srv.xml +++ b/doc/guide/dhcp4-srv.xml @@ -1102,6 +1102,12 @@ temporarily override a list of interface names and listen on all interfaces. ], ... } + + + + Care should be taken + to use proper encoding when using hexadecimal format as Kea's ability + to validate data correctness in hexadecimal is limited. @@ -1341,12 +1347,12 @@ This rather belong to the DDNS configuration dhcp-renewal-time58uint32falsetrue dhcp-rebinding-time59uint32falsetrue --> -vendor-class-identifier60binaryfalsefalse +vendor-class-identifier60hexfalsefalse nwip-domain-name62stringfalsefalse -nwip-suboptions63binaryfalsefalse +nwip-suboptions63hexfalsefalse nisplus-domain-name64stringfalsefalse nisplus-servers65ipv4-addresstruefalse tftp-server-name66stringfalsefalse @@ -1360,7 +1366,7 @@ This rather belong to the DDNS configuration irc-server74ipv4-addresstruefalse streettalk-server75ipv4-addresstruefalse streettalk-directory-assistance-server76ipv4-addresstruefalse -user-class77binaryfalsefalse +user-class77hexfalsefalse slp-directory-agent78record (boolean, ipv4-address)truefalse slp-service-scope79record (boolean, string)falsefalse client-system93uint16truefalse client-ndi94record (uint8, uint8, uint8)falsefalse -uuid-guid97record (uint8, binary)falsefalse +uuid-guid97record (uint8, hex)falsefalse uap-servers98stringfalsefalse -geoconf-civic99binaryfalsefalse +geoconf-civic99hexfalsefalse pcode100stringfalsefalse tcode101stringfalsefalse netinfo-server-address112ipv4-addresstruefalse @@ -1397,8 +1403,8 @@ It is merely echoed by the server name-service-search117uint16truefalse subnet-selection118ipv4-addressfalsefalse domain-search119fqdntruefalse -vivco-suboptions124binaryfalsefalse -vivso-suboptions125binaryfalsefalse +vivco-suboptions124hexfalsefalse +vivso-suboptions125hexfalsefalse pana-agent136ipv4-addresstruefalse v4-lost137fqdnfalsefalse capwap-ac-v4138ipv4-addresstruefalse @@ -1423,7 +1429,7 @@ It is merely echoed by the server NameMeaning - binaryAn arbitrary string of bytes, specified as a set of hexadecimal digits. + hexAn arbitrary string of bytes, specified as a set of hexadecimal digits. booleanBoolean value with allowed values true or false emptyNo value, data is carried in suboptions fqdnFully qualified domain name (e.g. www.example.com) @@ -2563,13 +2569,15 @@ It is merely echoed by the server If the client sent no name, generate one for the client. - + + Note that formerly, this parameter was a boolean and permitted only values of true and false. Boolean values have been deprecated and are no longer accepted. If you are currently using booleans, you must replace them with the desired mode name. A value of true maps to "when-present", while false maps to "never". + For example, To instruct kea-dhcp4 to always generate the FQDN for a @@ -2616,7 +2624,6 @@ It is merely echoed by the server ... } - When generating a name, kea-dhcp4 will construct name of the format: @@ -2632,6 +2639,7 @@ It is merely echoed by the server myhost-172-16-1-10.example.com. +
@@ -2865,9 +2873,10 @@ It is merely echoed by the server (the DHCPv6 side is described in ). - DHCPv4-over-DHCPv6 support is experimental and the details of - the inter-process communication can change: both the - DHCPv4 and DHCPv6 sides should be running the same version of Kea. + DHCPv4-over-DHCPv6 support is experimental and the + details of the inter-process communication can change: both + the DHCPv4 and DHCPv6 sides should be running the same version + of Kea. The dhcp4o6-port global parameter specifies diff --git a/doc/guide/dhcp6-srv.xml b/doc/guide/dhcp6-srv.xml index 66da042a07..93ae67ee03 100644 --- a/doc/guide/dhcp6-srv.xml +++ b/doc/guide/dhcp6-srv.xml @@ -986,7 +986,7 @@ temporarily override a list of interface names and listen on all interfaces. ... ] } - + The value for the setting of the "data" element is split across two @@ -1231,8 +1231,8 @@ temporarily override a list of interface names and listen on all interfaces. unicast12ipv6-addressfalse vendor-opts17uint32false --> @@ -1272,22 +1272,22 @@ temporarily override a list of interface names and listen on all interfaces. information-refresh-time32uint32false bcmcs-server-dns33fqdntrue bcmcs-server-addr34ipv6-addresstrue -geoconf-civic36record (uint8, uint16, binary)false -remote-id37record (uint32, binary)false -subscriber-id38binaryfalse +geoconf-civic36record (uint8, uint16, hex)false +remote-id37record (uint32, hex)false +subscriber-id38hexfalse client-fqdn39record (uint8, fqdn)false pana-agent40ipv6-addresstrue new-posix-timezone41stringfalse new-tzdb-timezone42stringfalse ero43uint16true -lq-query44record (uint8, ipv6-address)false -client-data45emptyfalse -clt-time46uint32false -lq-relay-data47record (ipv6-address, binary)false -lq-client-link48ipv6-addresstrue +lq-query (1)44record (uint8, ipv6-address)false +client-data (1)45emptyfalse +clt-time (1)46uint32false +lq-relay-data (1)47record (ipv6-address, hex)false +lq-client-link (1)48ipv6-addresstrue v6-lost51fqdnfalse capwap-ac-v652ipv6-addresstrue -relay-id53binaryfalse +relay-id53hexfalse v6-access-domain57fqdnfalse sip-ua-cs-list58fqdntrue bootfile-url59stringfalse @@ -1297,19 +1297,26 @@ temporarily override a list of interface names and listen on all interfaces. aftr-name64fqdnfalse erp-local-domain-name65fqdnfalse rsoo66emptyfalse -pd-exclude67binaryfalse +pd-exclude67hexfalse rdnss-selection74record (ipv6-address, uint8, fqdn)true -client-linklayer-addr79binaryfalse +client-linklayer-addr79hexfalse link-address80ipv6-addressfalse solmax-rt82uint32false inf-max-rt83uint32false - + dhcp4o6-server-addr88ipv6-addresstrue v6-captive-portal103stringfalse ipv6-address-andsf143ipv6-addresstrue + Options marked with (1) have option definitions, but the logic + behind them is not implemented. That means that technically Kea + knows how to parse them in incoming message or how to send them + if configured to do so, but not what to do with them. Since the + related RFCs require certain processing, the support for those + options is non-functional. However, it may be useful in some + limited lab testing, hence the definition formats are listed here. @@ -1324,10 +1331,10 @@ temporarily override a list of interface names and listen on all interfaces. NameCodeTypeArray? -public-key701binaryfalse -certificate702binaryfalse -signature703record (uint8, uint8, binary)false -timestamp704binaryfalse +public-key701hexfalse +certificate702hexfalse +signature703record (uint8, uint8, hex)false +timestamp704hexfalse