blob: 1a10187e4fd2b0f61a786fe2cf5d1fcae7bb2e80 [file] [log] [blame]
{#
SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
SPDX-License-Identifier: Apache-2.0
#}
;# nsd forward zone, templates/zone.forward.j2 - {{ ansible_managed }}
$ORIGIN {{ item.key }}. ; default zone domain
$TTL {{ item.ttl | default(nsd_default_ttl) }} ; default time to live
@ IN SOA {{ item.value.ns | first }} admin.{{ item.key }}. (
{{ item.value.serial | default(ansible_date_time.epoch) }} ; Serial, must be incremented every time you change this file
3600 ; Refresh [1hr]
600 ; Retry [10m]
3600 ; Expire [1hr]
60 ; Min TTL [1m]
)
; NameServers
{% for ns in item.value.ns %}
IN NS {{ ns }}
{% endfor %}
{% if item.value.a is defined %}
; A records
{% for name, ip4 in item.value.a.items() %}
{{ name }} IN A {{ ip4 }}
{% endfor %}
{% endif %}
{% if item.value.cname is defined %}
; CNAME records
{% for name, target in item.value.cname.items() %}
{{ name }} IN CNAME {{ target }}
{% endfor %}
{% endif %}
{% if item.srv is defined %}
; SRV records
{% for name, val in item.value.srv.items() %}
{{ name }} {{ val.ttl | default(nsd_default_ttl) }} IN SRV {{ val.priority | default(10) }} {{ val.port }} {{ val.target }}
{% endfor %}
{% endif %}
{% if item.value.txt is defined %}
; TXT records
{% for name, val in item.value.txt.items() %}
{{ name }} IN TXT "{{ val }}"
{% endfor %}
{% endif %}