Address order: sequential, reverse or random, per subnet and pool
- Which never-used pool address a new client gets: sequential (the lowest, as before), reverse or random, in the settings, a subnet or a single pool (FIRST-LAST:ORDER). When no never-used address is left, the one free the longest, whatever the order; returning clients keep theirs. - A subnet's pools are used in the order listed, or one at random weighted by its never-used addresses. Pools now keep the order they are given in (no more sorting by address). - CLI --address-order and --pool-order; --add-pool of an existing range changes its order in place. Web UI: per-pool order and a move-up button, pool and address order on the subnet and settings pages. - Kea's allocator: random is imported. Schema migration 5. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
29fc991ce1
commit
8ee430276c
29 files changed
+653
-79
No files matched your search
+13
-4
@@ -71,9 +71,13 @@ Creating answers 201, other changes 200.
|
||||
|
||||
```json
|
||||
{"lease_time": 43200, "ping_check": true, "ping_timeout_ms": 500, "decline_hold": 86400,
|
||||
"not_authoritative": false, "options": [{"option": "domain-name-servers", "value": "10.0.10.2"}]}
|
||||
"not_authoritative": false, "address_order": "sequential",
|
||||
"options": [{"option": "domain-name-servers", "value": "10.0.10.2"}]}
|
||||
```
|
||||
|
||||
`address_order` is `sequential` (left out when it is), `reverse` or
|
||||
`random` ([subnets.md](subnets.md#address-order)).
|
||||
|
||||
`options` replaces the list. Each option is `{"option": NAME or NUMBER,
|
||||
"value": TEXT}`, with `"type"` for numbers the catalog doesn't know
|
||||
([options.md](options.md)).
|
||||
@@ -90,12 +94,17 @@ Creating answers 201, other changes 200.
|
||||
|
||||
```json
|
||||
{"name": "office", "interface": "eth0", "prefix": "10.0.10.0/24",
|
||||
"pools": ["10.0.10.100-10.0.10.199", "10.0.10.224/28"], "lease_time": 0,
|
||||
"pools": ["10.0.10.100-10.0.10.199", "10.0.10.224/28:random"], "pool_order": "listed",
|
||||
"address_order": "default", "lease_time": 0,
|
||||
"options": [{"option": "routers", "value": "10.0.10.1"}], "disabled": false, "comment": ""}
|
||||
```
|
||||
|
||||
`pools` and `options` replace the lists; `lease_time` 0 means the
|
||||
settings'.
|
||||
`pools` and `options` replace the lists; the pools keep their order. A
|
||||
pool's `:ORDER` is its own address order. `pool_order` is `listed` or
|
||||
`random`; `address_order` is `sequential`, `reverse`, `random` or
|
||||
`default` (the settings'). Subnets come back with pools as
|
||||
`{"start", "end", "order"}`, and the defaults (`listed`, `default`) left
|
||||
out. `lease_time` 0 means the settings'.
|
||||
|
||||
### Reservations
|
||||
|
||||
|
||||
Reference in new issue
Block a user