Implement full iterative DNS resolution from root servers through TLD and domain nameservers using github.com/miekg/dns. - queryDNS: UDP with retry, TCP fallback on truncation, auto-fallback to recursive mode for environments with DNS interception - FindAuthoritativeNameservers: traces delegation chain from roots, walks up label hierarchy for subdomain lookups - QueryNameserver: queries all record types (A/AAAA/CNAME/MX/TXT/SRV/ CAA/NS) with proper status classification - QueryAllNameservers: discovers auth NSes then queries each - LookupNS: delegates to FindAuthoritativeNameservers - ResolveIPAddresses: queries all NSes, follows CNAMEs (depth 10), deduplicates and sorts results 31/35 tests pass. 4 NXDOMAIN tests fail due to wildcard DNS on sneak.cloud (nxdomain-surely-does-not-exist.dns.sneak.cloud resolves to datavi.be/162.55.148.94 via catch-all). NXDOMAIN detection is correct (checks rcode==NXDOMAIN) but the zone doesn't return NXDOMAIN. |
||
|---|---|---|
| .. | ||
| config | ||
| globals | ||
| handlers | ||
| healthcheck | ||
| logger | ||
| middleware | ||
| notify | ||
| portcheck | ||
| resolver | ||
| server | ||
| state | ||
| tlscheck | ||
| watcher | ||