Skip to content

Walk the DNS tree to find which nameservers a particular zone (or "domain") uses. Mimics "dig +trace", but in Go.

License

Notifications You must be signed in to change notification settings

DNSSpy/zone-nameservers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 

Repository files navigation

baby-gopher zone-nameservers

Walk the DNS tree to find which name servers a particular zone uses. Mimics "dig +trace", but written in Go as an experiment.

Building

After a git clone;

$ go build
$ ./zone-nameservers YOURDOMAIN.TLD

Examples

Here's what it looks like for dnsspy.io.

./zone-nameservers dnsspy.io
Retrieving list of root nameservers:
 - a.root-servers.net.
 - b.root-servers.net.
 - c.root-servers.net.
 - d.root-servers.net.
 - e.root-servers.net.
 - f.root-servers.net.
 - g.root-servers.net.
 - h.root-servers.net.
 -> i.root-servers.net.
 - j.root-servers.net.
 - k.root-servers.net.
 - l.root-servers.net.
 - m.root-servers.net.


Finding nameservers for zone 'io.' using parent nameserver 'i.root-servers.net.'
 - a0.nic.io.
 - b0.nic.io.
 - c0.nic.io.
 - ns-a1.io.
 - ns-a2.io.
 -> ns-a3.io.
 - ns-a4.io.


Finding nameservers for zone 'dnsspy.io.' using parent nameserver 'ns-a3.io.'
 - ns1.nucleus.be.
 - ns2.nucleus.be.
 - ns3.nucleus.be.
 - ns4.nucleus.be.

The arrow represents which nameserver from the parent was used to query for details of the child zone.

Why?

Why not just query directly for NS records, you ask? Not everyone keeps those up-to-date and they often return outdated or wrong information, as nameservers change without modifying the NS records to reflect that.

In other words: the only absolutely way to find our which nameservers a particular zone uses, you have to walk the DNS tree.

Credits

This code is initially based on the check-soa script by miekg.

About

Walk the DNS tree to find which nameservers a particular zone (or "domain") uses. Mimics "dig +trace", but in Go.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages