summaryrefslogtreecommitdiff
path: root/data/templates/dns-forwarding/recursor.forward-zones.conf.j2
diff options
context:
space:
mode:
Diffstat (limited to 'data/templates/dns-forwarding/recursor.forward-zones.conf.j2')
-rw-r--r--data/templates/dns-forwarding/recursor.forward-zones.conf.j229
1 files changed, 29 insertions, 0 deletions
diff --git a/data/templates/dns-forwarding/recursor.forward-zones.conf.j2 b/data/templates/dns-forwarding/recursor.forward-zones.conf.j2
new file mode 100644
index 000000000..de3269e47
--- /dev/null
+++ b/data/templates/dns-forwarding/recursor.forward-zones.conf.j2
@@ -0,0 +1,29 @@
+{# j2lint: disable=operator-enclosed-by-spaces #}
+# Autogenerated by VyOS (vyos-hostsd)
+# Do not edit, your changes will get overwritten
+
+# dot zone (catch-all): '+' indicates recursion is desired
+# (same as forward-zones-recurse)
+{# the code below ensures the order of nameservers is determined first by #}
+{# the order of tags, then by the order of nameservers within that tag #}
+{% set n = namespace(dot_zone_ns='') %}
+{% for tag in name_server_tags_recursor %}
+{% set ns = '' %}
+{% if tag in name_servers %}
+{% set ns = ns + name_servers[tag] | join(', ') %}
+{% set n.dot_zone_ns = (n.dot_zone_ns, ns) | join(', ') if n.dot_zone_ns != '' else ns %}
+{% endif %}
+# {{ tag }}: {{ ns }}
+{% endfor %}
+
+{% if n.dot_zone_ns %}
++.={{ n.dot_zone_ns }}
+{% endif %}
+
+{% if forward_zones is vyos_defined %}
+# zones added via 'service dns forwarding domain'
+{% for zone, zonedata in forward_zones.items() %}
+{{ "+" if zonedata.recursion_desired is vyos_defined }}{{ zone | replace('_', '-') }}={{ zonedata.server | join(', ') }}
+{% endfor %}
+{% endif %}
+