++1268. [func] fdupont
++ Kea now re-detects network interfaces every time configuration is
++ changed. 're-detect' parameter added to restore old behavior, if
++ needed.
++ (Trac #3389, git xxx)
++
+1267. [bug] fdupont
+ Unit-tests for libdhcp now ignore ENOPROTOPT when setting
+ SO_REUSEPORT to improve compatibility with older RedHat versions.
+ (Trac #5243, git a7b478e1d1f7f0b38055086fe9ac053e4fab2850)
+
+1266. [func] fdupont
+ It is now possible to define options in DHCPv4 pools.
+ (Trac #5288, git aa2839caab8d885e5bceca6f506162debd239b3f)
+
+1265. [func] fdupont
+ Extended classification relay6[nest] syntax to allows counting
+ relays from the DHCPv6 client side by using negative number,
+ e.g. relay6[-1] represents the first relay (closest to the
+ client).
+ (Trac #5287, git 7d0f7a8372dcf256fea8ac13330f0e3e7ed2e8ef)
+
+1264. [func] marcin
+ Kea's command manager has been re-implemented to use ASIO.
+ Simultaneous connections over the control channel are now
+ possible.
+ (Trac #5317, git 4139a2f41bb3736615bdfa278746962a16384d0d)
+
+1263. [doc] marcin
+ Added example configurations of the nginx and Apache2 HTTPS
+ servers running as reverse proxy for Kea RESTful API.
+ (Trac #5302, git 48113aba218603afac4d457075458d4988e4082b)
+ (Trac #5303, git b3113da16eb5c6fa323068f0a57dfa30f42893d2)
+
+1262. [func]* marcin
+ Renamed "dhcp4-server", "dhcp6-server" and "d2-server" parameters
+ of the Control Agent configuration to "dhcp4", "dhcp6" and "d2"
+ respectively.
+ (Trac #5190, git fc67885022115df76425c6901959cedee63a93b9)
+
+1261. [bug] marcin
+ Eliminated valgrind errors in libkea-http.
+ (Trac #5261, git 34addef4a654665c6022f0269d51970c72431ac2)
+
+1260. [bug] fdupont
+ Corrected logic in prefix delegation that was causing multiple
+ entries to be written to the lease file when renewing or rebinding
+ a prefix.
+ (Trac #5104, git b9ab6ebe7a491c062bc8b0b42afc53f4d6cee011)
+
+1259. [func] marcin
+ Implemented timeout for the control commands forwarded between
+ the Control Agent and Kea servers. The enhanced forwarding
+ mechanism uses asynchronous calls over the unix domain sockets.
+ It also detects the JSON structure boundaries when receiving it
+ over the stream sockets.
+ (Trac #5189, git e48d9399c215406f2dab1601d22d6c932b4af271)
+
+1258. [bug] fdupont
+ Fixed wrong python package path when kea-shell was configured
+ without a prefix.
+ (Trac #5214, git 44908c5fa56bfa7e1113078f43c458687a97388a)
+
+Kea 1.2.0 released on April 28, 2017
+
+1257. [bug] marcin
+ Improved logging in the hosts manager.
+ (Trac #5264, git 2fb9fd78e63f5d09810702847ad3e3b3020ea92b)
+
+1256. [bug] tomek
+ Control Agent now writes proper configuration when using
+ config-write command.
+ (Trac #5253, git a1b5da4db6ebfa9635bbe411ec363cdcc4fd1d28)
+
+1255. [bug] marcin
+ Fixed failing unit tests in libkea-http.
+ (Trac #5260, git 43394f76efb1634155c04b205dec7361fc21f4f9)
+
+1254. [func] tomek
+ Various improvements needed for upcoming host commands library:
+ host data source is now able to delete hosts, hosts can be exported
+ to JSON format, C++11 code for configure script moved to separate
+ file, several compilation warnings removed.
+ (Trac #5208, git 88555d8f23745f3d615448e906796920cc7f44d0)
+
+1253. [func,doc] tomek
+ Default configuration file has been overhauled significantly. It
+ now covers many additional options and features. Command channel
+ is now enabled by default. Thanks to Dan Mahoney for his review.
+ (Trac #5198, git 280de81cfe957ccab8a28074bdb0a4bc0e45104e)
+
+1252. [bug] tmark
+ kea-dhcp6 now correctly resets lease state and increments the
+ assigned statistic when it reissues an expired-reclaimed lease
+ to the lease's original client, in response to a REQUEST from
+ said client.
+ (Trac #5252, git 85bde7adbe6a78238bd5e17fecabfa918755f16c)
+
+1251. [func] tomek
+ New type of host identifier (flex-id) used in reservations has
+ by added to MySQL and PostgreSQL schemas.
+ (Trac #5195, git 37c26cc30b717019fbd6b7349279541edb351382)
+
+1250. [bug] fdupont
+ Do not unregister timers when running the config-test command.
+ (Trac #5186, git e891b06940e41b4cfaa324c2ace8fdd761ee6662)
+
+1249. [bug] tmark
+ The assigned lease statistics were not being probably adjusted
+ by either kea-dhcp4 or kea-dhcp6 when reclaimed expired leases
+ were reissued.
+ (Trac #5247, git 4e5193fb32b14325ccf5824614e58bcceb3e6388)
+
+1248. [bug] marcin
+ Improved socket connection handling code, corrected numerous
+ failing and crashing tests for libkea-asiolink, libkea-http
+ and kea-ctrl-agent on Debian, Fedora and Ubuntu.
+ (Trac #5217, git 4bcb45f0c88aba3d0f70ca48d9fff6f1d4616bc2)
+
+1247. [bug] marcin
+ Resolved issues with DHCPv4 host reservations by 'client-id'
+ when MySQL or PostgreSQL host database backend is in use.
+ Also, the 'client-id' is used together with other host
+ identifier types when 'host-reservation-identifiers' parameter
+ is not specified.
+ (Trac #5102, git 390d687d0f61635f5562d13860ff6362eee67853)
+
+1246. [func,bug] tomek
+ Restrictions in filename argument in config-write command have
+ been removed. It is now possible to use absolute paths.
+ DHCPv4, DHCPv6, D2 and Agent parsers did not handle flush,
+ maxsize or maxver parameters in logger configuration correctly.
+ This is now fixed.
+ (Trac #5187, git a30ffcc67cfb7370c586d3c85147792e27aab4c7)
+
+1245. [func] fdupont
+ DHCPv4 domain-search option can now be defined using
+ comma separated values.
+ (Trac #5087, git eca0b8c6425bc922587675100f100b1aae54aee2)
+
+1244. [doc] tomek
+ User's Guide section about Kea shell added.
+ (Trac #5171, git 3dc4908fe02e86c57ccd5ad2d2f8330655f438be)
+
+1243. [func] tomek
+ config-reload command implemented. It allows Kea DHCPv4 and DHCPv6
+ servers to reload its original configuration file. Also,
+ set-config command was renamed to config-set.
+ (Trac #5213, git b209c2b577a2f9da71cc918d7a551f8efdc1c4cb)
+
+1242. [func] fdupont
+ Integer fields in options can now be specified in either
+ decimal or hexadecimal format.
+ (Trac #4540, git 4cbf341f4169cf1e1eae0721644797a726d89702)
+
+1241. [func] fdupont
+ Support for tuple-based options added. DHCPv6 option
+ bootfile-param (code 60) can now be set in a more convenient
+ manner.
+ (Trac #4070, git 30102cacee95b91e6c4666f0c11f06232f19eeb9)
+
+1240. [bug] marcin
+ Corrected IOFetch unit test failures on Debian.
+ (Trac #5216, git a7c2946678c43aedfb2e3c37b9730a10067528f3)
+
+1239. [func] marcin
+ Implemented additional sanity checks when adding host
+ reservations into the configuration file.
+ (Trac #5207, git ea42c6f479918235ae4a67a60d08720e2664720c)
+
+Kea 1.2.0-beta released on April 7, 2017
+
+1238. [build] tmark,tomek
+ Library version numbers bumped for release.
+ (Trac #5201 git 58c9c5b705d72031c1589c30c542384a9d43e0f3)
+
+1237. [bug] marcin
+ Fixed hanging Control Agent unit tests.
+ (Trac #5200, git 65daafd135965f9eb0bd4c3a22085d4bd3c6ffbe)
+
+1236. [build] zeitounator
+ Improvements in tools/tests_in_valgrind.sh script.
+ (Github #49, git 272e7babf9ebeab5f78850394d72c9431041e2e9)
+
+1235. [func] MrMarvin
+ kea-admin now supports -h (and --host) parameter that can specify
+ MySQL or PostgreSQL database locations other than the default
+ localhost.
+ (Github #14, git 4038157a3499ad90956c98a2172c57b173f2b985)
+
+1234. [build] fdupont
+ Improved installation procedure for kea-shell.
+ (Trac #5170, git 68a902fb723965ee6f5b7a8272224395917525cc)
+
+1233. [doc] marcin
+ Documented new component Kea Control Agent in the Administrator's
+ Manual and the Developer's Guide.
+ (Trac #5175, git abf7887ad65eb4b221a1fe61ea0c9773b4feaddb)
+
+1232. [func] tomek
+ host4_identifier and host6_identifier hook points have been added.
+ Premium: Flexible Identifier (flex-id) hook point has been developed.
+ It allows users to specify a custom expression that takes any
+ option, field, characteristic or property of the packet to be
+ used as identifier and then do reservations based on the evaluated
+ expression for each incoming packet.
+ (Trac #5132, git cd497526d5bff7ae55bb41c9264fb33943a0cf62)
+
+1231. [func] marcin
+ Control agent forwards commands to be handled by other Kea
+ servers.
+ (Trac #5078, git 19a50ed1ccafae19ef10d84cba73992cadf49753)
+
+1230. [bug] fdupont
+ kea-dhcp-ddns now correctly populates the original ID in the TSIG rdata
+ when doing signed updates. Prior to this the value was set to zero
+ causing PowerDNS to reject then requests with a bad key error.
+ (Trac #5071, git cafa3d5c24f0112b0b9384a9c1083fe8a3eeb2bf)
+
+1229. [func] fdupont
+ A new command: config-test has been implemented in DHCPv4, DHCPv6
+ and control agent servers. It allows checking whether new
+ configuration looks correct.
+ (Trac #5150, git 5f6cf226e848baef8d9af64e16c1dbf617a0a798)
+
+1228. [bug] fdupont
+ Logging on syslog now uses correctly the given facility. If none
+ is given the default facility is local0, and with an unrecognized
+ value user (log4cplus default). The syslog openlog() ident
+ parameter is the program name.
+ (Trac #5053, git 532d9f0e459ab1450a83a5015a2dd54745794383)
+
+1227. [func] fdupont, tomek
+ Additional commands: version-get, build-report have been
+ implemented for DHCPv4, DHCPv6 and Control Agent
+ components. Control Agent also now supports shutdown command.
+ (Trac #102, git 9d2b8326fc032876d74c1768c61c630987c25cc5)
+
1226. [func] fdupont
Command line option -t support added to libprocess and implemented
for kea-dhcp-ddns and kea-ctrl-agent. It allows configuration sanity
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ ]\n"
+ " \"interfaces\": [ ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ ]\n"
+ " \"interfaces\": [ ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ ]\n"
+ " \"interfaces\": [ ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ ]\n"
+ " \"interfaces\": [ ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ ]\n"
+ " \"interfaces\": [ ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ ]\n"
+ " \"interfaces\": [ ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ ]\n"
+ " \"interfaces\": [ ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
+" \"interfaces-config\": {\n"
+" \"interfaces\": [ \"*\" ]\n"
+" },\n"
+" \"lease-database\": {\n"
+" \"type\": \"memfile\"\n"
+" },\n"
+" \"option-data\": [ ],\n"
+" \"option-def\": [ ],\n"
+" \"subnet4\": [\n"
+" {\n"
+" \"4o6-interface\": \"\",\n"
+" \"4o6-interface-id\": \"\",\n"
+" \"4o6-subnet\": \"\",\n"
+" \"id\": 1,\n"
+" \"interface\": \"\",\n"
+" \"match-client-id\": true,\n"
+" \"next-server\": \"0.0.0.0\",\n"
+" \"option-data\": [ ],\n"
+" \"pools\": [\n"
+" {\n"
+" \"option-data\": [\n"
+" {\n"
+" \"code\": 56,\n"
+" \"csv-format\": false,\n"
+" \"data\": \"ABCDEF0105\",\n"
+" \"name\": \"dhcp-message\",\n"
+" \"space\": \"dhcp4\"\n"
+" },\n"
+" {\n"
+" \"code\": 23,\n"
+" \"csv-format\": false,\n"
+" \"data\": \"01\",\n"
+" \"name\": \"default-ip-ttl\",\n"
+" \"space\": \"dhcp4\"\n"
+" }\n"
+" ],\n"
+" \"pool\": \"192.0.2.1-192.0.2.100\"\n"
+" }\n"
+" ],\n"
+" \"rebind-timer\": 2000,\n"
+" \"relay\": {\n"
+" \"ip-address\": \"0.0.0.0\"\n"
+" },\n"
+" \"renew-timer\": 1000,\n"
+" \"reservation-mode\": \"all\",\n"
+" \"reservations\": [ ],\n"
+" \"subnet\": \"192.0.2.0/24\",\n"
+" \"valid-lifetime\": 4000\n"
+" }\n"
+" ]\n"
+" }\n",
+ // CONFIGURATION 31
+"{\n"
+" \"decline-probation-period\": 86400,\n"
+" \"dhcp-ddns\": {\n"
+" \"always-include-fqdn\": false,\n"
+" \"enable-updates\": false,\n"
+" \"generated-prefix\": \"myhost\",\n"
+" \"max-queue-size\": 1024,\n"
+" \"ncr-format\": \"JSON\",\n"
+" \"ncr-protocol\": \"UDP\",\n"
+" \"override-client-update\": false,\n"
+" \"override-no-update\": false,\n"
+" \"qualifying-suffix\": \"\",\n"
+" \"replace-client-name\": \"never\",\n"
+" \"sender-ip\": \"0.0.0.0\",\n"
+" \"sender-port\": 0,\n"
+" \"server-ip\": \"127.0.0.1\",\n"
+" \"server-port\": 53001\n"
+" },\n"
+" \"dhcp4o6-port\": 0,\n"
+" \"echo-client-id\": true,\n"
+" \"expired-leases-processing\": {\n"
+" \"flush-reclaimed-timer-wait-time\": 25,\n"
+" \"hold-reclaimed-time\": 3600,\n"
+" \"max-reclaim-leases\": 100,\n"
+" \"max-reclaim-time\": 250,\n"
+" \"reclaim-timer-wait-time\": 10,\n"
+" \"unwarned-reclaim-cycles\": 5\n"
+" },\n"
+" \"hooks-libraries\": [ ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
+" \"interfaces-config\": {\n"
+" \"interfaces\": [ \"*\" ]\n"
+" },\n"
+" \"lease-database\": {\n"
+" \"type\": \"memfile\"\n"
+" },\n"
+" \"option-data\": [ ],\n"
+" \"option-def\": [ ],\n"
+" \"subnet4\": [\n"
+" {\n"
+" \"4o6-interface\": \"\",\n"
+" \"4o6-interface-id\": \"\",\n"
+" \"4o6-subnet\": \"\",\n"
+" \"id\": 1,\n"
+" \"interface\": \"\",\n"
+" \"match-client-id\": true,\n"
+" \"next-server\": \"0.0.0.0\",\n"
+" \"option-data\": [ ],\n"
+" \"pools\": [\n"
+" {\n"
+" \"option-data\": [\n"
+" {\n"
+" \"code\": 56,\n"
+" \"csv-format\": false,\n"
+" \"data\": \"ABCDEF0105\",\n"
+" \"name\": \"dhcp-message\",\n"
+" \"space\": \"dhcp4\"\n"
+" }\n"
+" ],\n"
+" \"pool\": \"192.0.2.1-192.0.2.100\"\n"
+" },\n"
+" {\n"
+" \"option-data\": [\n"
+" {\n"
+" \"code\": 23,\n"
+" \"csv-format\": false,\n"
+" \"data\": \"01\",\n"
+" \"name\": \"default-ip-ttl\",\n"
+" \"space\": \"dhcp4\"\n"
+" }\n"
+" ],\n"
+" \"pool\": \"192.0.2.200-192.0.2.250\"\n"
+" }\n"
+" ],\n"
+" \"rebind-timer\": 2000,\n"
+" \"relay\": {\n"
+" \"ip-address\": \"0.0.0.0\"\n"
+" },\n"
+" \"renew-timer\": 1000,\n"
+" \"reservation-mode\": \"all\",\n"
+" \"reservations\": [ ],\n"
+" \"subnet\": \"192.0.2.0/24\",\n"
+" \"valid-lifetime\": 4000\n"
+" }\n"
+" ]\n"
+" }\n",
+ // CONFIGURATION 32
+"{\n"
+" \"decline-probation-period\": 86400,\n"
+" \"dhcp-ddns\": {\n"
+" \"always-include-fqdn\": false,\n"
+" \"enable-updates\": false,\n"
+" \"generated-prefix\": \"myhost\",\n"
+" \"max-queue-size\": 1024,\n"
+" \"ncr-format\": \"JSON\",\n"
+" \"ncr-protocol\": \"UDP\",\n"
+" \"override-client-update\": false,\n"
+" \"override-no-update\": false,\n"
+" \"qualifying-suffix\": \"\",\n"
+" \"replace-client-name\": \"never\",\n"
+" \"sender-ip\": \"0.0.0.0\",\n"
+" \"sender-port\": 0,\n"
+" \"server-ip\": \"127.0.0.1\",\n"
+" \"server-port\": 53001\n"
+" },\n"
+" \"dhcp4o6-port\": 0,\n"
+" \"echo-client-id\": true,\n"
+" \"expired-leases-processing\": {\n"
+" \"flush-reclaimed-timer-wait-time\": 25,\n"
+" \"hold-reclaimed-time\": 3600,\n"
+" \"max-reclaim-leases\": 100,\n"
+" \"max-reclaim-time\": 250,\n"
+" \"reclaim-timer-wait-time\": 10,\n"
+" \"unwarned-reclaim-cycles\": 5\n"
+" },\n"
+" \"hooks-libraries\": [ ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"eth0\", \"eth1\" ]\n"
+ " \"interfaces\": [ \"eth0\", \"eth1\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\", \"eth0\", \"eth1\" ]\n"
+ " \"interfaces\": [ \"*\", \"eth0\", \"eth1\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ ]\n"
+ " \"interfaces\": [ ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 10\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"
" \"unwarned-reclaim-cycles\": 5\n"
" },\n"
" \"hooks-libraries\": [ ],\n"
-" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\" ],\n"
+" \"host-reservation-identifiers\": [ \"hw-address\", \"duid\", \"circuit-id\", \"client-id\" ],\n"
" \"interfaces-config\": {\n"
- " \"interfaces\": [ \"*\" ]\n"
+ " \"interfaces\": [ \"*\" ],\n"
+ " \"re-detect\": false\n"
" },\n"
" \"lease-database\": {\n"
" \"type\": \"memfile\"\n"