<div dir="ltr"><div>Hi Glenn</div><div>i don't use random mac addresses.</div><div>We used ISC DHCP in the past and this work well with lease and reservation on hwaddr.</div><div>Kea permit a simplest management (with REST) and a simple way for high availability. We have make module in saltstack (i will push it in github when i have finish the kea formula)</div><div><br></div><div><br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le mar. 26 avr. 2022 à 01:52, Glenn Satchell <<a href="mailto:glenn.satchell@uniq.com.au">glenn.satchell@uniq.com.au</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Jean-Philippe<br>
<br>
Are your clients using random mac addresses? if so then each time they <br>
reboot they get a different mac address, and to the server it looks like <br>
a new client. My guess is the client-id stays the same? Can you use the <br>
client ID in the reservation setup rather than hwaddr?<br>
<br>
regards,<br>
<br>
Glenn<br>
<br>
On 2022-04-26 08:21, Jean-Philippe Martin wrote:<br>
<br>
> Hi<br>
> <br>
> We use kea 2.01 (lease and reservation in mysql)<br>
> <br>
> I have exactly this problem :<br>
> <br>
> if i use a subnet with "match-client-id": false<br>
> <br>
> my reservation (identifier is hwaddr) work but other lease is a newer <br>
> ip at each reboot<br>
> <br>
> If i use a subnet with "match-client-id": true<br>
> <br>
> lease d'ont be reset at boot but reservation don't work any more<br>
> <br>
> best regards<br>
> <br>
> _________________________________________<br>
> Hi Anton,<br>
> <br>
> Have you considered dropping the DHCPRELEASE packets instead?<br>
> <br>
> You can read how this could be done in Gitlab #606 "Drop packets in <br>
> DROP class" at <a href="https://gitlab.isc.org/isc-projects/kea/-/issues/606" rel="noreferrer" target="_blank">https://gitlab.isc.org/isc-projects/kea/-/issues/606</a><br>
> <br>
> Please refer to the Kea Arm for a discussion on the "DROP" class.<br>
> <br>
> Kind Regards Peter<br>
> <br>
> ________________________________<br>
> From: Kea-users <kea-users-bounces at <a href="http://lists.isc.org" rel="noreferrer" target="_blank">lists.isc.org</a>> on behalf of Anton <br>
> Starikov <starikov.a at <a href="http://tecomgroup.ru" rel="noreferrer" target="_blank">tecomgroup.ru</a>><br>
> Sent: 18 October 2020 19:02<br>
> To: kea-users at <a href="http://lists.isc.org" rel="noreferrer" target="_blank">lists.isc.org</a> <kea-users at <a href="http://lists.isc.org" rel="noreferrer" target="_blank">lists.isc.org</a>><br>
> Subject: [Kea-users] New IP address after each reboot<br>
> <br>
> Good afternoon!<br>
> <br>
> Sorry for my english.<br>
> <br>
> There is a problem with Kea Dhcp4 1.6.3 (1.8 is the same).<br>
> <br>
> After each reboot, the client (Ubuntu, Arch) gets a new ip address from <br>
> KeaDhcp. As I understand it, this is due to the fact that Kea, after <br>
> receiving DHCPRELEASE from the client, does not immediately release the <br>
> address (although it adds a line with expire = 0 to the <br>
> lease-database), but does it after a while.<br>
> <br>
> As an experiment, I limited the address pool to two ip. And with each <br>
> reboot (interval ~ 20 seconds), the client received different addresses <br>
> in a circle.<br>
> <br>
> Previously, Mikrotik was used as DHCP, there was no such problem. The <br>
> client rebooted and, if the address was still free, he received it <br>
> back.<br>
> <br>
> Is there any way to force Kea to immediately release such addresses?<br>
> <br>
> I tried to change the settings described in the documentation in <br>
> section "10. Lease Expiration", it didn't help.<br>
> <br>
> {<br>
> <br>
> "Dhcp4": {<br>
> <br>
> "loggers": [<br>
> <br>
> {<br>
> <br>
> "name": "kea-dhcp4",<br>
> <br>
> "output_options": [<br>
> <br>
> {<br>
> <br>
> "output": "/var/log/kea-debug.log",<br>
> <br>
> "maxver": 8,<br>
> <br>
> "maxsize": 204800,<br>
> <br>
> "flush": true,<br>
> <br>
> "pattern": "%d{%j %H:%M:%S.%q} %c %m\n"<br>
> <br>
> }<br>
> <br>
> ],<br>
> <br>
> "severity": "DEBUG",<br>
> <br>
> "debuglevel": 99<br>
> <br>
> },<br>
> <br>
> {<br>
> <br>
> "name": "kea-dhcp4.commands",<br>
> <br>
> "output_options": [<br>
> <br>
> {<br>
> <br>
> "output": "syslog"<br>
> <br>
> }<br>
> <br>
> ],<br>
> <br>
> "severity": "DEBUG",<br>
> <br>
> "debuglevel": 99<br>
> <br>
> },<br>
> <br>
> {<br>
> <br>
> "name": "kea-dhcp4.http",<br>
> <br>
> "output_options": [<br>
> <br>
> {<br>
> <br>
> "output": "syslog"<br>
> <br>
> }<br>
> <br>
> ],<br>
> <br>
> "severity": "DEBUG",<br>
> <br>
> "debuglevel": 99<br>
> <br>
> },<br>
> <br>
> {<br>
> <br>
> "name": "kea-dhcp4.callouts",<br>
> <br>
> "output_options": [<br>
> <br>
> {<br>
> <br>
> "output": "syslog"<br>
> <br>
> }<br>
> <br>
> ],<br>
> <br>
> "severity": "DEBUG",<br>
> <br>
> "debuglevel": 99<br>
> <br>
> }],<br>
> <br>
> "authoritative": false,<br>
> <br>
> "boot-file-name": "",<br>
> <br>
> "calculate-tee-times": true,<br>
> <br>
> "client-classes": [<br>
> <br>
> {<br>
> <br>
> "boot-file-name": "",<br>
> <br>
> "name": "pxe",<br>
> <br>
> "next-server": "10.0.0.12",<br>
> <br>
> "only-if-required": true,<br>
> <br>
> "option-data": [<br>
> <br>
> {<br>
> <br>
> "always-send": false,<br>
> <br>
> "code": 66,<br>
> <br>
> "csv-format": true,<br>
> <br>
> "data": "10.0.0.12",<br>
> <br>
> "name": "tftp-server-name",<br>
> <br>
> "space": "dhcp4"<br>
> <br>
> },<br>
> <br>
> {<br>
> <br>
> "always-send": false,<br>
> <br>
> "code": 67,<br>
> <br>
> "csv-format": true,<br>
> <br>
> "data": "grldr",<br>
> <br>
> "name": "boot-file-name",<br>
> <br>
> "space": "dhcp4"<br>
> <br>
> }<br>
> <br>
> ],<br>
> <br>
> "option-def": [ ],<br>
> <br>
> "server-hostname": "",<br>
> <br>
> "test": "member('ALL')"<br>
> <br>
> },<br>
> <br>
> {<br>
> <br>
> "boot-file-name": "",<br>
> <br>
> "name": "voip",<br>
> <br>
> "next-server": "10.0.0.10",<br>
> <br>
> "only-if-required": true,<br>
> <br>
> "option-data": [<br>
> <br>
> {<br>
> <br>
> "always-send": false,<br>
> <br>
> "code": 66,<br>
> <br>
> "csv-format": true,<br>
> <br>
> "data": "10.0.0.10",<br>
> <br>
> "name": "tftp-server-name",<br>
> <br>
> "space": "dhcp4"<br>
> <br>
> },<br>
> <br>
> {<br>
> <br>
> "always-send": false,<br>
> <br>
> "code": 67,<br>
> <br>
> "csv-format": true,<br>
> <br>
> "data": "grldr1",<br>
> <br>
> "name": "boot-file-name",<br>
> <br>
> "space": "dhcp4"<br>
> <br>
> }<br>
> <br>
> ],<br>
> <br>
> "option-def": [ ],<br>
> <br>
> "server-hostname": "",<br>
> <br>
> "test": "member('ALL')"<br>
> <br>
> }<br>
> <br>
> ],<br>
> <br>
> "control-socket": {<br>
> <br>
> "socket-name": "/tmp/kea-dhcp4-ctrl.sock",<br>
> <br>
> "socket-type": "unix"<br>
> <br>
> },<br>
> <br>
> "decline-probation-period": 86400,<br>
> <br>
> "dhcp-ddns": {<br>
> <br>
> "enable-updates": false,<br>
> <br>
> "generated-prefix": "myhost",<br>
> <br>
> "max-queue-size": 1024,<br>
> <br>
> "ncr-format": "JSON",<br>
> <br>
> "ncr-protocol": "UDP",<br>
> <br>
> "override-client-update": false,<br>
> <br>
> "override-no-update": false,<br>
> <br>
> "qualifying-suffix": "",<br>
> <br>
> "replace-client-name": "never",<br>
> <br>
> "sender-ip": "0.0.0.0",<br>
> <br>
> "sender-port": 0,<br>
> <br>
> "server-ip": "127.0.0.1",<br>
> <br>
> "server-port": 53001<br>
> <br>
> },<br>
> <br>
> "dhcp-queue-control": {<br>
> <br>
> "capacity": 500,<br>
> <br>
> "enable-queue": false,<br>
> <br>
> "queue-type": "kea-ring4"<br>
> <br>
> },<br>
> <br>
> "dhcp4o6-port": 0,<br>
> <br>
> "echo-client-id": true,<br>
> <br>
> "expired-leases-processing": {<br>
> <br>
> "flush-reclaimed-timer-wait-time": 5,<br>
> <br>
> "hold-reclaimed-time": 1800,<br>
> <br>
> "max-reclaim-leases": 100,<br>
> <br>
> "max-reclaim-time": 250,<br>
> <br>
> "reclaim-timer-wait-time": 10,<br>
> <br>
> "unwarned-reclaim-cycles": 5<br>
> <br>
> },<br>
> <br>
> "hooks-libraries": [<br>
> <br>
> {<br>
> <br>
> "library": "/usr/lib/x86_64-linux-gnu/kea/hooks/libdhcp_lease_cmds.so"<br>
> <br>
> }<br>
> <br>
> ],<br>
> <br>
> "host-reservation-identifiers": [ "hw-address"],<br>
> <br>
> "interfaces-config": {<br>
> <br>
> "interfaces": [ "*" ],<br>
> <br>
> "re-detect": true<br>
> <br>
> },<br>
> <br>
> "lease-database": {<br>
> <br>
> "name": "/var/lib/kea/dhcp4.leases",<br>
> <br>
> "persist": true,<br>
> <br>
> "type": "memfile"<br>
> <br>
> },<br>
> <br>
> "match-client-id": false,<br>
> <br>
> "next-server": "0.0.0.0",<br>
> <br>
> "option-data": [<br>
> <br>
> {<br>
> <br>
> "always-send": false,<br>
> <br>
> "code": 6,<br>
> <br>
> "csv-format": true,<br>
> <br>
> "data": "10.0.0.1",<br>
> <br>
> "name": "domain-name-servers",<br>
> <br>
> "space": "dhcp4"<br>
> <br>
> },<br>
> <br>
> {<br>
> <br>
> "always-send": false,<br>
> <br>
> "code": 15,<br>
> <br>
> "csv-format": true,<br>
> <br>
> "data": "<a href="http://lab.winitlab.com" rel="noreferrer" target="_blank">lab.winitlab.com</a>",<br>
> <br>
> "name": "domain-name",<br>
> <br>
> "space": "dhcp4"<br>
> <br>
> },<br>
> <br>
> {<br>
> <br>
> "always-send": false,<br>
> <br>
> "code": 119,<br>
> <br>
> "csv-format": false,<br>
> <br>
> "data": "057465636F6D046E6E6F76027275000A7465636F6D67726F757002727500",<br>
> <br>
> "name": "domain-search",<br>
> <br>
> "space": "dhcp4"<br>
> <br>
> }<br>
> <br>
> ],<br>
> <br>
> "option-def": [ ],<br>
> <br>
> "t1-percent": 0.5,<br>
> <br>
> "t2-percent": 0.875,<br>
> <br>
> "reservation-mode": "all",<br>
> <br>
> "sanity-checks": {<br>
> <br>
> "lease-checks": "warn"<br>
> <br>
> },<br>
> <br>
> "server-hostname": "",<br>
> <br>
> "server-tag": "",<br>
> <br>
> "shared-networks": [ ],<br>
> <br>
> "subnet4": [<br>
> <br>
> {<br>
> <br>
> "4o6-interface": "",<br>
> <br>
> "4o6-interface-id": "",<br>
> <br>
> "4o6-subnet": "",<br>
> <br>
> "authoritative": false,<br>
> <br>
> "calculate-tee-times": true,<br>
> <br>
> "id": 18,<br>
> <br>
> "match-client-id": false,<br>
> <br>
> "next-server": "1.1.1.1",<br>
> <br>
> "option-data": [<br>
> <br>
> {<br>
> <br>
> "always-send": false,<br>
> <br>
> "code": 3,<br>
> <br>
> "csv-format": true,<br>
> <br>
> "data": "10.0.50.1",<br>
> <br>
> "name": "routers",<br>
> <br>
> "space": "dhcp4"<br>
> <br>
> },<br>
> <br>
> {<br>
> <br>
> "always-send": false,<br>
> <br>
> "code": 6,<br>
> <br>
> "csv-format": true,<br>
> <br>
> "data": "10.200.0.1",<br>
> <br>
> "name": "domain-name-servers",<br>
> <br>
> "space": "dhcp4"<br>
> <br>
> },<br>
> <br>
> {<br>
> <br>
> "always-send": false,<br>
> <br>
> "code": 15,<br>
> <br>
> "csv-format": true,<br>
> <br>
> "data": "bncvbn.nnn",<br>
> <br>
> "name": "domain-name",<br>
> <br>
> "space": "dhcp4"<br>
> <br>
> }<br>
> <br>
> ],<br>
> <br>
> "pools": [<br>
> <br>
> {<br>
> <br>
> "option-data": [ ],<br>
> <br>
> "pool": "10.0.50.10-10.0.50.80"<br>
> <br>
> }<br>
> <br>
> ],<br>
> <br>
> "relay": {<br>
> <br>
> "ip-addresses": [ "10.0.50.1" ]<br>
> <br>
> },<br>
> <br>
> "reservation-mode": "all",<br>
> <br>
> "reservations": [],<br>
> <br>
> "subnet": "<a href="http://10.0.50.0/24" rel="noreferrer" target="_blank">10.0.50.0/24</a>",<br>
> <br>
> "t1-percent": 0.5,<br>
> <br>
> "t2-percent": 0.875,<br>
> <br>
> "valid-lifetime": 86400<br>
> <br>
> }<br>
> <br>
> ],<br>
> <br>
> "t1-percent": 0.5,<br>
> <br>
> "t2-percent": 0.875,<br>
> <br>
> "valid-lifetime": 4000<br>
> <br>
> }<br>
> <br>
> }<br>
> <br>
> --<br>
> <br>
> _______________________<br>
-- <br>
ISC funds the development of this software with paid support subscriptions. Contact us at <a href="https://www.isc.org/contact/" rel="noreferrer" target="_blank">https://www.isc.org/contact/</a> for more information.<br>
<br>
dhcp-users mailing list<br>
<a href="mailto:dhcp-users@lists.isc.org" target="_blank">dhcp-users@lists.isc.org</a><br>
<a href="https://lists.isc.org/mailman/listinfo/dhcp-users" rel="noreferrer" target="_blank">https://lists.isc.org/mailman/listinfo/dhcp-users</a><br>
</blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr">_______________________</div></div>