Skip to content

Feature request: trace #52

@liamdawson

Description

@liamdawson

When explaining some aspects of DNS resolution, I noted that dig 9.10.6 has the following query option:

+[no]trace

Toggle tracing of the delegation path from the root name servers for the name being looked up. Tracing is disabled by default. When tracing is enabled, dig makes iterative queries to resolve the name being looked up. It will follow referrals from the root servers, showing the answer from each server that was used to resolve the lookup.

If @server is also specified, it affects only the initial query for the root zone name servers.

I found this pretty handy for investigating some configurations — I'd love to see an equivalent feature in doggo.

The dig version's behaviour:

$ dig github.com +trace +nodnssec @1.1.1.1

; <<>> DiG 9.10.6 <<>> github.com +trace +nodnssec @1.1.1.1
;; global options: +cmd
.			514951	IN	NS	a.root-servers.net.
.			514951	IN	NS	b.root-servers.net.
.			514951	IN	NS	c.root-servers.net.
.			514951	IN	NS	d.root-servers.net.
.			514951	IN	NS	e.root-servers.net.
.			514951	IN	NS	f.root-servers.net.
.			514951	IN	NS	g.root-servers.net.
.			514951	IN	NS	h.root-servers.net.
.			514951	IN	NS	i.root-servers.net.
.			514951	IN	NS	j.root-servers.net.
.			514951	IN	NS	k.root-servers.net.
.			514951	IN	NS	l.root-servers.net.
.			514951	IN	NS	m.root-servers.net.
;; Received 811 bytes from 1.1.1.1#53(1.1.1.1) in 54 ms

com.			172800	IN	NS	l.gtld-servers.net.
com.			172800	IN	NS	b.gtld-servers.net.
com.			172800	IN	NS	c.gtld-servers.net.
com.			172800	IN	NS	d.gtld-servers.net.
com.			172800	IN	NS	e.gtld-servers.net.
com.			172800	IN	NS	f.gtld-servers.net.
com.			172800	IN	NS	g.gtld-servers.net.
com.			172800	IN	NS	a.gtld-servers.net.
com.			172800	IN	NS	h.gtld-servers.net.
com.			172800	IN	NS	i.gtld-servers.net.
com.			172800	IN	NS	j.gtld-servers.net.
com.			172800	IN	NS	k.gtld-servers.net.
com.			172800	IN	NS	m.gtld-servers.net.
;; Received 835 bytes from 192.5.5.241#53(f.root-servers.net) in 4 ms

github.com.		172800	IN	NS	ns-520.awsdns-01.net.
github.com.		172800	IN	NS	ns-421.awsdns-52.com.
github.com.		172800	IN	NS	ns-1707.awsdns-21.co.uk.
github.com.		172800	IN	NS	ns-1283.awsdns-32.org.
github.com.		172800	IN	NS	dns1.p08.nsone.net.
github.com.		172800	IN	NS	dns2.p08.nsone.net.
github.com.		172800	IN	NS	dns3.p08.nsone.net.
github.com.		172800	IN	NS	dns4.p08.nsone.net.
;; Received 278 bytes from 192.26.92.30#53(c.gtld-servers.net) in 173 ms

github.com.		60	IN	A	20.248.137.48
github.com.		900	IN	NS	dns1.p08.nsone.net.
github.com.		900	IN	NS	dns2.p08.nsone.net.
github.com.		900	IN	NS	dns3.p08.nsone.net.
github.com.		900	IN	NS	dns4.p08.nsone.net.
github.com.		900	IN	NS	ns-1283.awsdns-32.org.
github.com.		900	IN	NS	ns-1707.awsdns-21.co.uk.
github.com.		900	IN	NS	ns-421.awsdns-52.com.
github.com.		900	IN	NS	ns-520.awsdns-01.net.
;; Received 278 bytes from 205.251.193.165#53(ns-421.awsdns-52.com) in 14 ms

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions