When upgrading from focal to jammy, existing dnsmasq dhcp-scripts stopped working in an environment where a DHCP relay is in use. Instead of the expected client IP address, the script gets the _relay_ IP address as an argument. From dnsmasq documentation for --dhcp-script:
> The arguments to the process are "add", "old" or "del", the MAC address of the host (or DUID for IPv6) , the IP address, and the hostname, if known.
When upgrading from focal to jammy, existing dnsmasq dhcp-scripts stopped working in an environment where a DHCP relay is in use. Instead of the expected client IP address, the script gets the _relay_ IP address as an argument. From dnsmasq documentation for --dhcp-script:
> The arguments to the process are "add", "old" or "del", the MAC address of the host (or DUID for IPv6) , the IP address, and the hostname, if known.
I believe the change has been inadverently made in upstream commit 527c3c7d0d3bb4b f5fad699f10cf0d 1a45a54692 (https:/ /thekelleys. org.uk/ gitweb/ ?p=dnsmasq. git;a=blobdiff; f=src/helper. c;h=02340a01c00 031db0cc682c8a4 a279cfc1db574e; hp=d81de9622e6d 484a264496b2cd3 638b4e15e9677; hb=527c3c7d0d3b b4bf5fad699f10c f0d1a45a54692; hpb=fcb4dcaf7cc 8a86ac2533b9331 61b6455f75bf8f) as the commit message only speaks about inet_ntoa replacement and not the behavioral change it also introduces (previously the relay address was only set to the environment variable, now it effectively overrides the prevoiusly set client's IP address).
dnsmasq 2.86-1.1ubuntu0.3 / Ubuntu 22.04