get_dns_data module

get_dns_data

Retrieve DNS data via Zone Transfer (AXFR) from a specified DNS server.

  • Parameters:

    • server (str) – IP address or hostname of the DNS Server.

    • port (int) – Port number (usually 53).

    • Zone (str) – The DNS Zone to transfer (e.g., ‘sphinx.at.’).

  • returns: name (str) – DNS Name / Record Name. ttl (int): Time to Live in seconds. dns_class (str): DNS Class (usually ‘IN’). type (str): DNS Record Type (A, SOA, DHCID, MX, etc.). data (str): The actual Data Entry of the record.

Examples

Simple Zone Transfer

1select 'sphinx.at.' as dnszone, get_dns_data('10.10.31.79', 53, 'sphinx.at.');

Reverse DNS Lookup (PTR) with string concatenation

 1select
 2    dnszone,
 3    case when name='@' then dnszone else name || '.' || dnszone end as full_name,
 4    ttl,
 5    dns_class,
 6    "TYPE",
 7    "DATA"
 8from (
 9    select
10        dnszone || '.in-addr.arpa.' as dnszone,
11        get_dns_data('10.10.31.99', 53, local.dnszone)
12    from (values ('10')) as t(dnszone)
13);