dnsmasq: allow DHCP for non-primary IP address

Not actually needed but doesn’t hurt. Except it makes instantiating
the template even slower. Maybe rewrite the whole thing.
This commit is contained in:
Timotej Lazar 2026-01-06 16:48:48 +01:00
parent 70c9d72ff4
commit 8276c6e8b4

View file

@ -8,10 +8,13 @@ dhcp-range = set:{{ prefix.vlan.name }},{{ range.start_address | ipaddr('address
dhcp-option = tag:{{ prefix.vlan.name }},option:router,{{ prefix.custom_fields.gateway.address | ipaddr('address') }}
{% endif -%}
{% for host in hostvars.values() | selectattr('primary_ip4', 'defined') | selectattr('primary_ip4', 'ansible.utils.in_network', prefix.prefix) %}
{% for host in hostvars.values() | selectattr('interfaces', 'defined') %}
{% for interface in host.interfaces | selectattr('mac_address') %}
{% for address in interface.ip_addresses | selectattr('status.value', '==', 'dhcp') %}
dhcp-host = {{ interface.mac_address | lower }},{{ address.address | ipaddr('address') }},{{ interface.device.name | lower }}
{% for address in interface.ip_addresses
| selectattr('status.value', '==', 'dhcp')
| map(attribute='address') | map('ipaddr', 'address')
| select('ansible.utils.in_network', prefix.prefix) %}
dhcp-host = {{ interface.mac_address | lower }},{{ address }},{{ interface.device.name | lower }}
{% endfor %}
{% endfor %}
{% endfor %}