I had completely forgotten about the server-address-override option.
Thanks to Richard and Michael for reminding me about that. It is indeed
supported and should solve the unicast renewal problem.
Ignacio, why not configure you switch to relay all ports? Then you can
block broadcasts without problems. You don't have to have special
configuration in dnsmasq for all the ports, it will do boring dynamic
address allocation fine on relayed requests. (Remember that the netmask
is not option in dhcp-range lines used by clients behind a relay.)
Michael: the change I was thinking of should be completely transparent
in all other situations except this. It just inhibits filtering of
available dhcp-ranges by tag on a unicast DHCP renewal. Since by that
time a lease will exist and the address is known, at most one dhcp-range
can match anyway.
Simon.,