incus 6.23 here. I have a bridge network which I’ve add an external interface to, and connected a client device. incus’ dnsmasq is acting as the DHCP server for this network.
The client device has picked up both IPv4 and IPv6 addresses. But incus network list-leases doesn’t show the IPv4 address (100.126.3.105), even though it’s visible in dnsmasq’s leases file.
Incus always filters the entries based on the list of MAC addresses present in your current project. That’s effectively to avoid leaking information about other projects when they share a network.
This also causes any unknown MAC (not in the current project’s MAC address list) to be dropped.
But “current project” is a client-side concept, isn’t it? (If you mean incus project switch).
When I issue the command with --debug I see the API request being made to http://unix.socket/1.0/networks/wifi0/leases - the project name isn’t included. I can also see that the response doesn’t include the “missing” lease, so it’s not being filtered client-side.
I see, thanks. incus network list-leases wifi0 --project=nsrc-builder --debug makes a request to http://unix.socket/1.0/networks/wifi0/leases?project=nsrc-builder
Presumably the IPv6 leases can’t be associated with a project (perhaps because assigned via duid rather than MAC address?) so are unfiltered.
As an incus administrator, and/or as a user in a project with no features or restrictions enabled, it would be nice to have a global view of the leases on a network.