Zack Williams | 13644cc | 2020-08-30 15:16:43 -0700 | [diff] [blame^] | 1 | {# |
| 2 | SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org> |
| 3 | SPDX-License-Identifier: Apache-2.0 |
| 4 | #} |
| 5 | ;# nsd forward zone, templates/zone.forward.j2 - {{ ansible_managed }} |
| 6 | |
| 7 | $ORIGIN {{ item.key }}. ; default zone domain |
| 8 | $TTL {{ item.ttl | default(nsd_default_ttl) }} ; default time to live |
| 9 | |
| 10 | @ IN SOA {{ item.value.ns | first }} admin.{{ item.key }}. ( |
| 11 | {{ item.value.serial | default(ansible_date_time.epoch) }} ; Serial, must be incremented every time you change this file |
| 12 | 3600 ; Refresh [1hr] |
| 13 | 600 ; Retry [10m] |
| 14 | 3600 ; Expire [1hr] |
| 15 | 60 ; Min TTL [1m] |
| 16 | ) |
| 17 | |
| 18 | ; NameServers |
| 19 | {% for ns in item.value.ns %} |
| 20 | IN NS {{ ns }} |
| 21 | {% endfor %} |
| 22 | {% if item.value.a is defined %} |
| 23 | |
| 24 | ; A records |
| 25 | {% for name, ip4 in item.value.a.items() %} |
| 26 | {{ name }} IN A {{ ip4 }} |
| 27 | {% endfor %} |
| 28 | {% endif %} |
| 29 | {% if item.value.cname is defined %} |
| 30 | |
| 31 | ; CNAME records |
| 32 | {% for name, target in item.value.cname.items() %} |
| 33 | {{ name }} IN CNAME {{ target }} |
| 34 | {% endfor %} |
| 35 | {% endif %} |
| 36 | {% if item.srv is defined %} |
| 37 | |
| 38 | ; SRV records |
| 39 | {% for name, val in item.value.srv.items() %} |
| 40 | {{ name }} {{ val.ttl | default(nsd_default_ttl) }} IN SRV {{ val.priority | default(10) }} {{ val.port }} {{ val.target }} |
| 41 | {% endfor %} |
| 42 | {% endif %} |
| 43 | {% if item.value.txt is defined %} |
| 44 | |
| 45 | ; TXT records |
| 46 | {% for name, val in item.value.txt.items() %} |
| 47 | {{ name }} IN TXT "{{ val }}" |
| 48 | {% endfor %} |
| 49 | {% endif %} |