// // Zone configuration for master name server (Salt managed) // // // ACLs // {% for acl_name, acl_config in salt['pillar.get']('dns-server:acls', {}).items ()|sort %} acl {{ acl_name }} { {%- for entry in acl_config %} // {{ entry }} {%- for IP in acl_config[entry] %} {{ IP }}; {%- endfor %} {%- endfor %} }; {% endfor %} // // Zones // {%- set defaults = salt['pillar.get']('dns-server:zone_defaults', {}) %} {% for zone, zone_config in salt['pillar.get']('dns-server:zones', {}).items ()|sort %} {%- set allow_transfer = zone_config.get ('allow-transfer', defaults.get ('allow-transfer')) %} // {{ zone_config.get ('desc', zone ) }} zone "{{ zone }}" { type {{ zone_config.get ('type', defaults.get ('type')) }}; file "{{ zone_config.get ('file') }}"; {%- if allow_transfer %} allow-transfer { {{ allow_transfer }} }; {%- endif %} }; {% endfor %}