Posting this in case anyone else needs the reference in the future when trying to wrap their heads around how DNSMasq handles static assignments vs dynamic ranges within a subnet.
Hosts:
I found that while you can configure multiple static ranges on a subnet, the definition with the lowest Start Address will always override the others since we cannot define an End Address. This means you cannot have a split DNS assignment within a subnet that is only managed by setting the Tag on the DHCP Range, variance from lowest Start Address Range definition MUST be set on the actual Host configuration itself. The same thing applies to Blackhole Gateway/DNS, you can logically define a "range" but it must be applied on the Host configuration.
Works:
DHCP Range: LAN-Static-Pihole
DHCP Range: LAN-Dynamic
Does not work:
DHCP Range: LAN-Static-Pihole
DHCP Range: LAN-Static-CloudFlare - This is ignored
DHCP Range: LAN-Static-Infrastructure - This is ignored
DHCP Range: LAN-Dynamic
Hosts:
- .1-.89: Clients Static Reservation, use Pihole
- .90-.99: Clients Static Reservation, use Cloudflare. DNS-CloudFlare tag needs to be set on Host.
- .100-.150: Clients Dynamic, use Pihole
- .200-.253: Infrastructure/Proxmox Static Reservation, use Pihole
I found that while you can configure multiple static ranges on a subnet, the definition with the lowest Start Address will always override the others since we cannot define an End Address. This means you cannot have a split DNS assignment within a subnet that is only managed by setting the Tag on the DHCP Range, variance from lowest Start Address Range definition MUST be set on the actual Host configuration itself. The same thing applies to Blackhole Gateway/DNS, you can logically define a "range" but it must be applied on the Host configuration.
Works:
DHCP Range: LAN-Static-Pihole
- Range Start: 192.168.157.1
- Mode: Static
- Domain Type: Range
- Tag: DNS-Pihole
DHCP Range: LAN-Dynamic
- Range Start: 192.168.157.100
- Range End: 192.168.157.150
- Mode: Nothing
- Domain Type: Range
- Tag: DNS-Pihole
Does not work:
DHCP Range: LAN-Static-Pihole
- Range Start: 192.168.157.1
- Mode: Static
- Domain Type: Range
- Tag: DNS-Pihole
DHCP Range: LAN-Static-CloudFlare - This is ignored
- Range Start: 192.168.157.90
- Mode: Static
- Domain Type: Range
- Tag: DNS-CloudFlare
DHCP Range: LAN-Static-Infrastructure - This is ignored
- Range Start: 192.168.157.200
- Mode: Static
- Domain Type: Range
- Tag: DNS-Pihole
DHCP Range: LAN-Dynamic
- Range Start: 192.168.157.100
- Range End: 192.168.157.150
- Mode: Nothing
- Domain Type: Range
- Tag: DNS-Pihole
"