diff --git a/bundles/powerdns/metadata.py b/bundles/powerdns/metadata.py index 24afe7c..234a3b7 100644 --- a/bundles/powerdns/metadata.py +++ b/bundles/powerdns/metadata.py @@ -1,4 +1,4 @@ -from ipaddress import ip_address, IPv4Address +from ipaddress import ip_address, IPv4Address, IPv6Address from bundlewrap.metadata import atomic @@ -159,6 +159,18 @@ def generate_dns_entries_for_nodes(metadata): if not ip4 and isinstance(addr, IPv4Address): ip4 = addr + if not ip4: + try: + ip4 = IPv4Address(rnode.hostname) + except ValueError: + pass + + if not ip6: + try: + ip6 = IPv6Address(rnode.hostname) + except ValueError: + pass + if ip4: results.add('{} IN A {}'.format(dns_name, ip4))