modified: src/netbox_plugin_bind_provisioner/management/commands/bind-transfer-endpoint.py

Fixes custom properties in catalog zone, adding dnssec policy as group property instead
(as spcified in RFC9432)
This commit is contained in:
Sven Luethi committed 2025-11-27 11:25:30 +01:00
1 parent a9c59f4c57
commit eee5395ea6
1 file changed
+10 -8
@@ -110,19 +110,21 @@ class CatalogZone():
# Configure DNSSec Policy for member Zone if DNSSec is enabled
if nb_zone.dnssec_policy:
# Configure policy
rid = dns.name.from_text(f"policy.dnssec", ptr_name)
rid = dns.name.from_text("group", ptr_name)
policy_name = nb_zone.dnssec_policy.name.rstrip(" ")
group_name = f'dnssec-policy-{policy_name}'
rdata = dns.rdata.from_text(
dns.rdataclass.IN, dns.rdatatype.TXT, nb_zone.dnssec_policy.name
dns.rdataclass.IN, dns.rdatatype.TXT, group_name
)
rdataset = zone.find_rdataset(rid, dns.rdatatype.TXT, create=True)
rdataset.add(rdata, ttl)
# Configure dnssec status for member zone
status = str(1 if nb_zone.dnssec_policy else 0)
rid = dns.name.from_text(f"enabled.dnssec", ptr_name)
rdata = dns.rdata.from_text(dns.rdataclass.IN, dns.rdatatype.TXT, status)
rdataset = zone.find_rdataset(rid, dns.rdatatype.TXT, create=True)
rdataset.add(rdata, ttl)
## Configure dnssec status for member zone
#status = str(1 if nb_zone.dnssec_policy else 0)
#rid = dns.name.from_text("enabled.dnssec.ext", ptr_name)
#rdata = dns.rdata.from_text(dns.rdataclass.IN, dns.rdatatype.TXT, status)
#rdataset = zone.find_rdataset(rid, dns.rdatatype.TXT, create=True)
#rdataset.add(rdata, ttl)
# SOA Record components
ttl = 3600