Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bugfix infinite-recursion if domain not resolved #9

Merged
merged 2 commits into from
Sep 22, 2022
Merged

Conversation

kokizzu
Copy link
Contributor

@kokizzu kokizzu commented Sep 22, 2022

Test plan:

dnstrace example.com
# should no longer memory leak
# previously, stuck, infinite recursion allocates 300MB every second until it OOM-killed

dnstrace facebook.com
# still returning normally
# previously returning normally

@kokizzu
Copy link
Contributor Author

kokizzu commented Sep 22, 2022

this changes:

root@vmi574213:/tmp# ./main example.com
1 - query A example.com.: opcode: QUERY, status: NOERROR, id: 53008, flags: qr rd;
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on M.root-servers.net.(2001:dc3::35): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on F.root-servers.net.(2001:500:2f::f): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on E.root-servers.net.(2001:500:a8::e): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on C.root-servers.net.(2001:500:2::c): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on G.root-servers.net.(2001:500:12::d0d): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on B.root-servers.net.(2001:500:200::b): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on D.root-servers.net.(2001:500:2d::d): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on A.root-servers.net.(2001:503:ba3e::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on J.root-servers.net.(2001:503:c27::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on H.root-servers.net.(2001:500:1::53): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on K.root-servers.net.(2001:7fd::1): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on L.root-servers.net.(2001:500:9f::42): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on I.root-servers.net.(2001:7fe::53): connect: network is unreachable
  - 1878 bytes in 2.27ms + 0ms (from glue) lookup on D.root-servers.net.(199.7.91.13)
  - 1878 bytes in 2.71ms + 0ms (from glue) lookup on E.root-servers.net.(192.203.230.10)
  - 1878 bytes in 2.76ms + 0ms (from glue) lookup on F.root-servers.net.(192.5.5.241)
  - 1878 bytes in 2.64ms + 0ms (from glue) lookup on B.root-servers.net.(199.9.14.201)
  - 1878 bytes in 2.11ms + 0ms (from glue) lookup on J.root-servers.net.(192.58.128.30)
  - 1878 bytes in 2.38ms + 0ms (from glue) lookup on L.root-servers.net.(199.7.83.42)
  - 1878 bytes in 2.64ms + 0ms (from glue) lookup on I.root-servers.net.(192.36.148.17)
  - 1878 bytes in 4.34ms + 0ms (from glue) lookup on C.root-servers.net.(192.33.4.12)
  - 1878 bytes in 6.56ms + 0ms (from glue) lookup on M.root-servers.net.(202.12.27.33)
  - 1878 bytes in 67.74ms + 0ms (from glue) lookup on H.root-servers.net.(198.97.190.53)
  - 1878 bytes in 67.36ms + 0ms (from glue) lookup on K.root-servers.net.(193.0.14.129)
  - 1878 bytes in 84.37ms + 0ms (from glue) lookup on G.root-servers.net.(192.112.36.4)
  - 1878 bytes in 161.95ms + 0ms (from glue) lookup on A.root-servers.net.(198.41.0.4)
com. 172800 NS a.gtld-servers.net. (glue: 192.5.6.30,2001:503:a83e::2:30)
com. 172800 NS b.gtld-servers.net. (glue: 192.33.14.30,2001:503:231d::2:30)
com. 172800 NS c.gtld-servers.net. (glue: 192.26.92.30,2001:503:83eb::30)
com. 172800 NS d.gtld-servers.net. (glue: 192.31.80.30,2001:500:856e::30)
com. 172800 NS e.gtld-servers.net. (glue: 192.12.94.30,2001:502:1ca1::30)
com. 172800 NS f.gtld-servers.net. (glue: 192.35.51.30,2001:503:d414::30)
com. 172800 NS g.gtld-servers.net. (glue: 192.42.93.30,2001:503:eea3::30)
com. 172800 NS h.gtld-servers.net. (glue: 192.54.112.30,2001:502:8cc::30)
com. 172800 NS i.gtld-servers.net. (glue: 192.43.172.30,2001:503:39c1::30)
com. 172800 NS j.gtld-servers.net. (glue: 192.48.79.30,2001:502:7094::30)
com. 172800 NS k.gtld-servers.net. (glue: 192.52.178.30,2001:503:d2d::30)
com. 172800 NS l.gtld-servers.net. (glue: 192.41.162.30,2001:500:d937::30)
com. 172800 NS m.gtld-servers.net. (glue: 192.55.83.30,2001:501:b1f9::30)

2 - query A example.com.: opcode: QUERY, status: NOERROR, id: 53008, flags: qr rd;
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on m.gtld-servers.net.(2001:501:b1f9::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on b.gtld-servers.net.(2001:503:231d::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on g.gtld-servers.net.(2001:503:eea3::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on a.gtld-servers.net.(2001:503:a83e::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on e.gtld-servers.net.(2001:502:1ca1::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on d.gtld-servers.net.(2001:500:856e::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on f.gtld-servers.net.(2001:503:d414::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on c.gtld-servers.net.(2001:503:83eb::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on h.gtld-servers.net.(2001:502:8cc::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on l.gtld-servers.net.(2001:500:d937::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on k.gtld-servers.net.(2001:503:d2d::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on i.gtld-servers.net.(2001:503:39c1::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on j.gtld-servers.net.(2001:502:7094::30): connect: network is unreachable
  - 652 bytes in 2.48ms + 0ms (from glue) lookup on b.gtld-servers.net.(192.33.14.30)
  - 652 bytes in 149.94ms + 0ms (from glue) lookup on c.gtld-servers.net.(192.26.92.30)
  - 652 bytes in 151.01ms + 0ms (from glue) lookup on e.gtld-servers.net.(192.12.94.30)
  - 652 bytes in 151.57ms + 0ms (from glue) lookup on g.gtld-servers.net.(192.42.93.30)
  - 652 bytes in 152.68ms + 0ms (from glue) lookup on i.gtld-servers.net.(192.43.172.30)
  - 652 bytes in 158.05ms + 0ms (from glue) lookup on j.gtld-servers.net.(192.48.79.30)
  - 652 bytes in 158.11ms + 0ms (from glue) lookup on m.gtld-servers.net.(192.55.83.30)
  - 652 bytes in 158.19ms + 0ms (from glue) lookup on k.gtld-servers.net.(192.52.178.30)
  - 652 bytes in 158.71ms + 0ms (from glue) lookup on l.gtld-servers.net.(192.41.162.30)
  - 652 bytes in 161.32ms + 0ms (from glue) lookup on h.gtld-servers.net.(192.54.112.30)
  - 652 bytes in 162.35ms + 0ms (from glue) lookup on f.gtld-servers.net.(192.35.51.30)
  - 652 bytes in 164.09ms + 0ms (from glue) lookup on d.gtld-servers.net.(192.31.80.30)
  - 652 bytes in 176.16ms + 0ms (from glue) lookup on a.gtld-servers.net.(192.5.6.30)
example.com. 172800 NS a.iana-servers.net. (no glue)
example.com. 172800 NS b.iana-servers.net. (no glue)
*** error: no response --> not stuck


root@vmi574213:/tmp# ./main facebook.com
1 - query A facebook.com.: opcode: QUERY, status: NOERROR, id: 28564, flags: qr rd;
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on M.root-servers.net.(2001:dc3::35): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on B.root-servers.net.(2001:500:200::b): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on H.root-servers.net.(2001:500:1::53): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on D.root-servers.net.(2001:500:2d::d): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on F.root-servers.net.(2001:500:2f::f): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on C.root-servers.net.(2001:500:2::c): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on I.root-servers.net.(2001:7fe::53): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on J.root-servers.net.(2001:503:c27::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on A.root-servers.net.(2001:503:ba3e::2:30): connect: network is unreachable
  - 1879 bytes in 5.89ms + 0ms (from glue) lookup on E.root-servers.net.(192.203.230.10)
  - 1879 bytes in 5.93ms + 0ms (from glue) lookup on C.root-servers.net.(192.33.4.12)
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on K.root-servers.net.(2001:7fd::1): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on L.root-servers.net.(2001:500:9f::42): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on G.root-servers.net.(2001:500:12::d0d): connect: network is unreachable
  - 1879 bytes in 8.08ms + 0ms (from glue) lookup on J.root-servers.net.(192.58.128.30)
  - 1879 bytes in 8.34ms + 0ms (from glue) lookup on F.root-servers.net.(192.5.5.241)
  - 1879 bytes in 5.61ms + 0ms (from glue) lookup on L.root-servers.net.(199.7.83.42)
  - 1879 bytes in 6.45ms + 0ms (from glue) lookup on M.root-servers.net.(202.12.27.33)
  - 1879 bytes in 14.21ms + 0ms (from glue) lookup on D.root-servers.net.(199.7.91.13)
  - 1879 bytes in 13.73ms + 0ms (from glue) lookup on I.root-servers.net.(192.36.148.17)
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on E.root-servers.net.(2001:500:a8::e): connect: network is unreachable
  - 1879 bytes in 30.10ms + 0ms (from glue) lookup on B.root-servers.net.(199.9.14.201)
  - 1879 bytes in 67.41ms + 0ms (from glue) lookup on K.root-servers.net.(193.0.14.129)
  - 1879 bytes in 67.07ms + 0ms (from glue) lookup on H.root-servers.net.(198.97.190.53)
  - 1879 bytes in 85.16ms + 0ms (from glue) lookup on G.root-servers.net.(192.112.36.4)
  - 1879 bytes in 149.56ms + 0ms (from glue) lookup on A.root-servers.net.(198.41.0.4)
com. 172800 NS a.gtld-servers.net. (glue: 192.5.6.30,2001:503:a83e::2:30)
com. 172800 NS b.gtld-servers.net. (glue: 192.33.14.30,2001:503:231d::2:30)
com. 172800 NS c.gtld-servers.net. (glue: 192.26.92.30,2001:503:83eb::30)
com. 172800 NS d.gtld-servers.net. (glue: 192.31.80.30,2001:500:856e::30)
com. 172800 NS e.gtld-servers.net. (glue: 192.12.94.30,2001:502:1ca1::30)
com. 172800 NS f.gtld-servers.net. (glue: 192.35.51.30,2001:503:d414::30)
com. 172800 NS g.gtld-servers.net. (glue: 192.42.93.30,2001:503:eea3::30)
com. 172800 NS h.gtld-servers.net. (glue: 192.54.112.30,2001:502:8cc::30)
com. 172800 NS i.gtld-servers.net. (glue: 192.43.172.30,2001:503:39c1::30)
com. 172800 NS j.gtld-servers.net. (glue: 192.48.79.30,2001:502:7094::30)
com. 172800 NS k.gtld-servers.net. (glue: 192.52.178.30,2001:503:d2d::30)
com. 172800 NS l.gtld-servers.net. (glue: 192.41.162.30,2001:500:d937::30)
com. 172800 NS m.gtld-servers.net. (glue: 192.55.83.30,2001:501:b1f9::30)

2 - query A facebook.com.: opcode: QUERY, status: NOERROR, id: 28564, flags: qr rd;
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on m.gtld-servers.net.(2001:501:b1f9::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on g.gtld-servers.net.(2001:503:eea3::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on h.gtld-servers.net.(2001:502:8cc::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on i.gtld-servers.net.(2001:503:39c1::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on c.gtld-servers.net.(2001:503:83eb::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on j.gtld-servers.net.(2001:502:7094::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on a.gtld-servers.net.(2001:503:a83e::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on b.gtld-servers.net.(2001:503:231d::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on k.gtld-servers.net.(2001:503:d2d::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on d.gtld-servers.net.(2001:500:856e::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on l.gtld-servers.net.(2001:500:d937::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on e.gtld-servers.net.(2001:502:1ca1::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on f.gtld-servers.net.(2001:503:d414::30): connect: network is unreachable
  - 1184 bytes in 152.02ms + 0ms (from glue) lookup on g.gtld-servers.net.(192.42.93.30)
  - 1184 bytes in 157.28ms + 0ms (from glue) lookup on l.gtld-servers.net.(192.41.162.30)
  - 1184 bytes in 157.85ms + 0ms (from glue) lookup on j.gtld-servers.net.(192.48.79.30)
  - 1184 bytes in 158.69ms + 0ms (from glue) lookup on k.gtld-servers.net.(192.52.178.30)
  - 1184 bytes in 161.70ms + 0ms (from glue) lookup on i.gtld-servers.net.(192.43.172.30)
  - 1184 bytes in 161.55ms + 0ms (from glue) lookup on b.gtld-servers.net.(192.33.14.30)
  - 1184 bytes in 162.17ms + 0ms (from glue) lookup on h.gtld-servers.net.(192.54.112.30)
  - 1184 bytes in 162.31ms + 0ms (from glue) lookup on f.gtld-servers.net.(192.35.51.30)
  - 1184 bytes in 163.29ms + 0ms (from glue) lookup on a.gtld-servers.net.(192.5.6.30)
  - 1184 bytes in 163.08ms + 0ms (from glue) lookup on e.gtld-servers.net.(192.12.94.30)
  - 1184 bytes in 164.03ms + 0ms (from glue) lookup on c.gtld-servers.net.(192.26.92.30)
  - 1184 bytes in 164.04ms + 0ms (from glue) lookup on d.gtld-servers.net.(192.31.80.30)
  - 1184 bytes in 170.78ms + 0ms (from glue) lookup on m.gtld-servers.net.(192.55.83.30)
facebook.com. 172800 NS a.ns.facebook.com. (glue: 129.134.30.12,2a03:2880:f0fc:c:face:b00c:0:35)
facebook.com. 172800 NS b.ns.facebook.com. (glue: 129.134.31.12,2a03:2880:f0fd:c:face:b00c:0:35)
facebook.com. 172800 NS c.ns.facebook.com. (glue: 185.89.218.12,2a03:2880:f1fc:c:face:b00c:0:35)
facebook.com. 172800 NS d.ns.facebook.com. (glue: 185.89.219.12,2a03:2880:f1fd:c:face:b00c:0:35)

3 - query A facebook.com.: opcode: QUERY, status: NOERROR, id: 28564, flags: qr aa rd;
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on d.ns.facebook.com.(2a03:2880:f1fd:c:face:b00c:0:35): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on b.ns.facebook.com.(2a03:2880:f0fd:c:face:b00c:0:35): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on c.ns.facebook.com.(2a03:2880:f1fc:c:face:b00c:0:35): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on a.ns.facebook.com.(2a03:2880:f0fc:c:face:b00c:0:35): connect: network is unreachable
  - 69 bytes in 1.57ms + 0ms (from glue) lookup on c.ns.facebook.com.(185.89.218.12)
  - 69 bytes in 1.49ms + 0ms (from glue) lookup on b.ns.facebook.com.(129.134.31.12)
  - 69 bytes in 188.83ms + 0ms (from glue) lookup on a.ns.facebook.com.(129.134.30.12)
  - 69 bytes in 195.05ms + 0ms (from glue) lookup on d.ns.facebook.com.(185.89.219.12)

;; Cold best path time: 159.125463ms

facebook.com.   300     IN      A       31.13.68.35

previous version:

root@vmi574213:/tmp# ~/go/bin/dnstrace example.com
1 - query A example.com.: opcode: QUERY, status: NOERROR, id: 58163, flags: qr rd;
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on M.root-servers.net.(2001:dc3::35): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on C.root-servers.net.(2001:500:2::c): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on B.root-servers.net.(2001:500:200::b): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on I.root-servers.net.(2001:7fe::53): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on K.root-servers.net.(2001:7fd::1): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on J.root-servers.net.(2001:503:c27::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on L.root-servers.net.(2001:500:9f::42): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on E.root-servers.net.(2001:500:a8::e): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on D.root-servers.net.(2001:500:2d::d): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on F.root-servers.net.(2001:500:2f::f): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on G.root-servers.net.(2001:500:12::d0d): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on A.root-servers.net.(2001:503:ba3e::2:30): connect: network is unreachable
  - 1878 bytes in 0.56ms + 0ms (from glue) lookup on E.root-servers.net.(192.203.230.10)
  - 1878 bytes in 0.59ms + 0ms (from glue) lookup on D.root-servers.net.(199.7.91.13)
  - 1878 bytes in 0.89ms + 0ms (from glue) lookup on J.root-servers.net.(192.58.128.30)
  - 1878 bytes in 0.93ms + 0ms (from glue) lookup on L.root-servers.net.(199.7.83.42)
  - 1878 bytes in 1.34ms + 0ms (from glue) lookup on I.root-servers.net.(192.36.148.17)
  - 1878 bytes in 1.13ms + 0ms (from glue) lookup on F.root-servers.net.(192.5.5.241)
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on H.root-servers.net.(2001:500:1::53): connect: network is unreachable
  - 1878 bytes in 3.18ms + 0ms (from glue) lookup on C.root-servers.net.(192.33.4.12)
  - 1878 bytes in 3.02ms + 0ms (from glue) lookup on B.root-servers.net.(199.9.14.201)
  - 1878 bytes in 6.56ms + 0ms (from glue) lookup on M.root-servers.net.(202.12.27.33)
  - 1878 bytes in 67.51ms + 0ms (from glue) lookup on K.root-servers.net.(193.0.14.129)
  - 1878 bytes in 67.29ms + 0ms (from glue) lookup on H.root-servers.net.(198.97.190.53)
  - 1878 bytes in 88.78ms + 0ms (from glue) lookup on G.root-servers.net.(192.112.36.4)
  - 1878 bytes in 150.09ms + 0ms (from glue) lookup on A.root-servers.net.(198.41.0.4)
com. 172800 NS a.gtld-servers.net. (glue: 192.5.6.30,2001:503:a83e::2:30)
com. 172800 NS b.gtld-servers.net. (glue: 192.33.14.30,2001:503:231d::2:30)
com. 172800 NS c.gtld-servers.net. (glue: 192.26.92.30,2001:503:83eb::30)
com. 172800 NS d.gtld-servers.net. (glue: 192.31.80.30,2001:500:856e::30)
com. 172800 NS e.gtld-servers.net. (glue: 192.12.94.30,2001:502:1ca1::30)
com. 172800 NS f.gtld-servers.net. (glue: 192.35.51.30,2001:503:d414::30)
com. 172800 NS g.gtld-servers.net. (glue: 192.42.93.30,2001:503:eea3::30)
com. 172800 NS h.gtld-servers.net. (glue: 192.54.112.30,2001:502:8cc::30)
com. 172800 NS i.gtld-servers.net. (glue: 192.43.172.30,2001:503:39c1::30)
com. 172800 NS j.gtld-servers.net. (glue: 192.48.79.30,2001:502:7094::30)
com. 172800 NS k.gtld-servers.net. (glue: 192.52.178.30,2001:503:d2d::30)
com. 172800 NS l.gtld-servers.net. (glue: 192.41.162.30,2001:500:d937::30)
com. 172800 NS m.gtld-servers.net. (glue: 192.55.83.30,2001:501:b1f9::30)

2 - query A example.com.: opcode: QUERY, status: NOERROR, id: 58163, flags: qr rd;
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on f.gtld-servers.net.(2001:503:d414::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on m.gtld-servers.net.(2001:501:b1f9::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on c.gtld-servers.net.(2001:503:83eb::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on j.gtld-servers.net.(2001:502:7094::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on b.gtld-servers.net.(2001:503:231d::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on k.gtld-servers.net.(2001:503:d2d::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on e.gtld-servers.net.(2001:502:1ca1::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on d.gtld-servers.net.(2001:500:856e::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on l.gtld-servers.net.(2001:500:d937::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on g.gtld-servers.net.(2001:503:eea3::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on h.gtld-servers.net.(2001:502:8cc::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on a.gtld-servers.net.(2001:503:a83e::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on i.gtld-servers.net.(2001:503:39c1::30): connect: network is unreachable
  - 652 bytes in 1.36ms + 0ms (from glue) lookup on b.gtld-servers.net.(192.33.14.30)
  - 652 bytes in 152.25ms + 0ms (from glue) lookup on g.gtld-servers.net.(192.42.93.30)
  - 652 bytes in 152.24ms + 0ms (from glue) lookup on f.gtld-servers.net.(192.35.51.30)
  - 652 bytes in 152.23ms + 0ms (from glue) lookup on i.gtld-servers.net.(192.43.172.30)
  - 652 bytes in 153.28ms + 0ms (from glue) lookup on h.gtld-servers.net.(192.54.112.30)
  - 652 bytes in 157.09ms + 0ms (from glue) lookup on k.gtld-servers.net.(192.52.178.30)
  - 652 bytes in 160.70ms + 0ms (from glue) lookup on m.gtld-servers.net.(192.55.83.30)
  - 652 bytes in 160.86ms + 0ms (from glue) lookup on l.gtld-servers.net.(192.41.162.30)
  - 652 bytes in 160.95ms + 0ms (from glue) lookup on j.gtld-servers.net.(192.48.79.30)
  - 652 bytes in 165.16ms + 0ms (from glue) lookup on a.gtld-servers.net.(192.5.6.30)
  - 652 bytes in 165.30ms + 0ms (from glue) lookup on c.gtld-servers.net.(192.26.92.30)
  - 652 bytes in 164.89ms + 0ms (from glue) lookup on e.gtld-servers.net.(192.12.94.30)
  - 652 bytes in 181.19ms + 0ms (from glue) lookup on d.gtld-servers.net.(192.31.80.30)
example.com. 172800 NS a.iana-servers.net. (no glue)
example.com. 172800 NS b.iana-servers.net. (no glue)
^C --> stuck forever until OOM-killed


root@vmi574213:/tmp# ~/go/bin/dnstrace facebook.com
1 - query A facebook.com.: opcode: QUERY, status: NOERROR, id: 2806, flags: qr rd;
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on M.root-servers.net.(2001:dc3::35): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on G.root-servers.net.(2001:500:12::d0d): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on H.root-servers.net.(2001:500:1::53): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on I.root-servers.net.(2001:7fe::53): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on A.root-servers.net.(2001:503:ba3e::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on J.root-servers.net.(2001:503:c27::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on K.root-servers.net.(2001:7fd::1): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on L.root-servers.net.(2001:500:9f::42): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on D.root-servers.net.(2001:500:2d::d): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on E.root-servers.net.(2001:500:a8::e): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on F.root-servers.net.(2001:500:2f::f): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on C.root-servers.net.(2001:500:2::c): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on B.root-servers.net.(2001:500:200::b): connect: network is unreachable
  - 1879 bytes in 2.52ms + 0ms (from glue) lookup on E.root-servers.net.(192.203.230.10)
  - 1879 bytes in 4.33ms + 0ms (from glue) lookup on J.root-servers.net.(192.58.128.30)
  - 1879 bytes in 4.45ms + 0ms (from glue) lookup on D.root-servers.net.(199.7.91.13)
  - 1879 bytes in 4.69ms + 0ms (from glue) lookup on I.root-servers.net.(192.36.148.17)
  - 1879 bytes in 5.87ms + 0ms (from glue) lookup on C.root-servers.net.(192.33.4.12)
  - 1879 bytes in 6.13ms + 0ms (from glue) lookup on B.root-servers.net.(199.9.14.201)
  - 1879 bytes in 5.99ms + 0ms (from glue) lookup on F.root-servers.net.(192.5.5.241)
  - 1879 bytes in 6.55ms + 0ms (from glue) lookup on M.root-servers.net.(202.12.27.33)
  - 1879 bytes in 6.66ms + 0ms (from glue) lookup on L.root-servers.net.(199.7.83.42)
  - 1879 bytes in 67.65ms + 0ms (from glue) lookup on K.root-servers.net.(193.0.14.129)
  - 1879 bytes in 67.88ms + 0ms (from glue) lookup on H.root-servers.net.(198.97.190.53)
  - 1879 bytes in 76.69ms + 0ms (from glue) lookup on G.root-servers.net.(192.112.36.4)
  - 1879 bytes in 149.00ms + 0ms (from glue) lookup on A.root-servers.net.(198.41.0.4)
com. 172800 NS a.gtld-servers.net. (glue: 192.5.6.30,2001:503:a83e::2:30)
com. 172800 NS b.gtld-servers.net. (glue: 192.33.14.30,2001:503:231d::2:30)
com. 172800 NS c.gtld-servers.net. (glue: 192.26.92.30,2001:503:83eb::30)
com. 172800 NS d.gtld-servers.net. (glue: 192.31.80.30,2001:500:856e::30)
com. 172800 NS e.gtld-servers.net. (glue: 192.12.94.30,2001:502:1ca1::30)
com. 172800 NS f.gtld-servers.net. (glue: 192.35.51.30,2001:503:d414::30)
com. 172800 NS g.gtld-servers.net. (glue: 192.42.93.30,2001:503:eea3::30)
com. 172800 NS h.gtld-servers.net. (glue: 192.54.112.30,2001:502:8cc::30)
com. 172800 NS i.gtld-servers.net. (glue: 192.43.172.30,2001:503:39c1::30)
com. 172800 NS j.gtld-servers.net. (glue: 192.48.79.30,2001:502:7094::30)
com. 172800 NS k.gtld-servers.net. (glue: 192.52.178.30,2001:503:d2d::30)
com. 172800 NS l.gtld-servers.net. (glue: 192.41.162.30,2001:500:d937::30)
com. 172800 NS m.gtld-servers.net. (glue: 192.55.83.30,2001:501:b1f9::30)

2 - query A facebook.com.: opcode: QUERY, status: NOERROR, id: 2806, flags: qr rd;
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on m.gtld-servers.net.(2001:501:b1f9::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on g.gtld-servers.net.(2001:503:eea3::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on c.gtld-servers.net.(2001:503:83eb::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on l.gtld-servers.net.(2001:500:d937::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on b.gtld-servers.net.(2001:503:231d::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on j.gtld-servers.net.(2001:502:7094::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on h.gtld-servers.net.(2001:502:8cc::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on i.gtld-servers.net.(2001:503:39c1::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on k.gtld-servers.net.(2001:503:d2d::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on a.gtld-servers.net.(2001:503:a83e::2:30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on e.gtld-servers.net.(2001:502:1ca1::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on d.gtld-servers.net.(2001:500:856e::30): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on f.gtld-servers.net.(2001:503:d414::30): connect: network is unreachable
  - 1184 bytes in 149.49ms + 0ms (from glue) lookup on c.gtld-servers.net.(192.26.92.30)
  - 1184 bytes in 149.31ms + 0ms (from glue) lookup on a.gtld-servers.net.(192.5.6.30)
  - 1184 bytes in 149.92ms + 0ms (from glue) lookup on d.gtld-servers.net.(192.31.80.30)
  - 1184 bytes in 152.09ms + 0ms (from glue) lookup on h.gtld-servers.net.(192.54.112.30)
  - 1184 bytes in 153.24ms + 0ms (from glue) lookup on g.gtld-servers.net.(192.42.93.30)
  - 1184 bytes in 154.26ms + 0ms (from glue) lookup on m.gtld-servers.net.(192.55.83.30)
  - 1184 bytes in 159.09ms + 0ms (from glue) lookup on j.gtld-servers.net.(192.48.79.30)
  - 1184 bytes in 161.53ms + 0ms (from glue) lookup on b.gtld-servers.net.(192.33.14.30)
  - 1184 bytes in 161.73ms + 0ms (from glue) lookup on f.gtld-servers.net.(192.35.51.30)
  - 1184 bytes in 162.07ms + 0ms (from glue) lookup on i.gtld-servers.net.(192.43.172.30)
  - 1184 bytes in 163.36ms + 0ms (from glue) lookup on k.gtld-servers.net.(192.52.178.30)
  - 1184 bytes in 163.82ms + 0ms (from glue) lookup on e.gtld-servers.net.(192.12.94.30)
  - 1184 bytes in 165.62ms + 0ms (from glue) lookup on l.gtld-servers.net.(192.41.162.30)
facebook.com. 172800 NS a.ns.facebook.com. (glue: 129.134.30.12,2a03:2880:f0fc:c:face:b00c:0:35)
facebook.com. 172800 NS b.ns.facebook.com. (glue: 129.134.31.12,2a03:2880:f0fd:c:face:b00c:0:35)
facebook.com. 172800 NS c.ns.facebook.com. (glue: 185.89.218.12,2a03:2880:f1fc:c:face:b00c:0:35)
facebook.com. 172800 NS d.ns.facebook.com. (glue: 185.89.219.12,2a03:2880:f1fd:c:face:b00c:0:35)

3 - query A facebook.com.: opcode: QUERY, status: NOERROR, id: 2806, flags: qr aa rd;
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on d.ns.facebook.com.(2a03:2880:f1fd:c:face:b00c:0:35): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on b.ns.facebook.com.(2a03:2880:f0fd:c:face:b00c:0:35): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on a.ns.facebook.com.(2a03:2880:f0fc:c:face:b00c:0:35): connect: network is unreachable
  - 0 bytes in 0.00ms + 0ms (from glue) lookup on c.ns.facebook.com.(2a03:2880:f1fc:c:face:b00c:0:35): connect: network is unreachable
  - 69 bytes in 1.11ms + 0ms (from glue) lookup on c.ns.facebook.com.(185.89.218.12)
  - 69 bytes in 1.04ms + 0ms (from glue) lookup on b.ns.facebook.com.(129.134.31.12)
  - 69 bytes in 169.63ms + 0ms (from glue) lookup on a.ns.facebook.com.(129.134.30.12)
  - 69 bytes in 206.83ms + 0ms (from glue) lookup on d.ns.facebook.com.(185.89.219.12)

;; Cold best path time: 152.879841ms

facebook.com.   300     IN      A       31.13.68.35

@rs rs merged commit e6b42f9 into rs:master Sep 22, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants