[AETHER-1000]
Allow reverse DNS lookups to work
NOTE: requires change in syntax used to define a zone - dns_zones no
longer works, must use dns_forward_zones/dns_reverse_zones
Fix multiplatform support
Change-Id: Ibd416b2da8853bc0b25ddec1774ddf9a9e1bf898
diff --git a/templates/nsd.conf.j2 b/templates/nsd.conf.j2
index 93c2a14..b079d13 100644
--- a/templates/nsd.conf.j2
+++ b/templates/nsd.conf.j2
@@ -18,14 +18,17 @@
remote-control:
control-enable: yes
-# zonefiles to load
-{% for key, value in dns_zones.items() %}
+# forward zones
+{% for key, value in dns_forward_zones.items() %}
zone:
name: {{ key }}
zonefile: {{ key }}.forward
+{% endfor %}
-# zone:
-# name: {{ value.ip_range | unbound_revdns }}
-# zonefile: {{ key }}.reverse
+# reverse zones
+{% for key, value in dns_reverse_zones.items() %}
+zone:
+ name: {{ key | unbound_revdns }}
+ zonefile: {{ key | ipaddr('network') }}.reverse
{% endfor %}
diff --git a/templates/zone.reverse.j2 b/templates/zone.reverse.j2
index a0e5ecc..512f34f 100644
--- a/templates/zone.reverse.j2
+++ b/templates/zone.reverse.j2
@@ -7,17 +7,20 @@
$ORIGIN {{ item.key }}. ; default zone domain
$TTL {{ item.value.ttl | default(nsd_default_ttl) }} ; default time to live
-{{ item.value.ip_range | unbound_revdns }} IN SOA {{ item.value.ns | first }} admin.{{ item.key }}. (
+{{ item.key| unbound_revdns }} 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]
)
-{% if item.value.a is defined %}
+
+; NameServers
+{% for ns in item.value.ns %}
+ IN NS {{ ns }}
+{% endfor %}
; PTR records
-{% for name, ip4 in item.value.a.items() %}
+{% for ip4, name in item.value.ptr.items() %}
{{ ip4 | ipaddr('revdns')}} IN PTR {{ name }}
{% endfor %}
-{% endif %}