如何使用 dnstraceroute?

如何使用 dnstraceroute?

我了解traceroute的工作原理,我给它一个域,它需要3个数据包,尝试通过中间服务器到达最终服务器。例如 -

[$] traceroute phoronix.com
    traceroute to phoronix.com (23.111.154.110), 30 hops max, 60 byte packets  

 1  gateway (192.168.1.1)  0.759 ms  1.181 ms  1.598 ms
 2  61.0.52.1 (61.0.52.1)  9.759 ms  15.932 ms  17.673 ms       
 3  218.248.164.106 (218.248.164.106)  20.431 ms  23.055 ms  25.810 ms
 4  218.248.235.161 (218.248.235.161)  56.832 ms  59.948 ms  62.170 ms
 5  218.248.235.162 (218.248.235.162)  64.490 ms *  70.113 ms
 6  * 218.248.178.42 (218.248.178.42)  74.185 ms *
 7  ix-pos-3-2.mcore3.LAA-Los-Angeles.as6453.net (216.6.84.153)  288.440 ms  338.163 ms ix-pos-3-0.mcore3.LAA-Los-Angeles.as6453.net (216.6.84.149)  247.309 ms
 8  if-xe-3-2-0-15.tcore2.LVW-Los-Angeles.as6453.net (64.86.252.85)  249.779 ms  253.608 ms  256.073 ms
 9  if-ae-6-20.tcore1.EQL-Los-Angeles.as6453.net (64.86.252.66)  264.612 ms  265.990 ms  269.466 ms
10  be3003.ccr41.lax05.atlas.cogentco.com (154.54.11.193)  271.767 ms  273.909 ms  277.114 ms
11  be3033.ccr22.lax01.atlas.cogentco.com (154.54.26.41)  279.672 ms be3032.ccr21.lax01.atlas.cogentco.com (154.54.31.53)  278.156 ms  281.060 ms
12  be2931.ccr21.phx02.atlas.cogentco.com (154.54.44.85)  295.825 ms be2932.ccr22.phx02.atlas.cogentco.com (154.54.45.161)  298.043 ms be2931.ccr21.phx02.atlas.cogentco.com (154.54.44.85)  300.382 ms
13  be2929.ccr21.elp01.atlas.cogentco.com (154.54.42.66)  246.302 ms  245.786 ms  252.709 ms
14  be2927.ccr41.iah01.atlas.cogentco.com (154.54.29.221)  264.252 ms  265.658 ms  268.376 ms
15  be2690.ccr42.atl01.atlas.cogentco.com (154.54.28.129)  293.106 ms be2687.ccr41.atl01.atlas.cogentco.com (154.54.28.69)  292.108 ms  294.465 ms
16  be2848.ccr41.atl04.atlas.cogentco.com (154.54.6.118)  293.523 ms be2847.ccr41.atl04.atlas.cogentco.com (154.54.6.102)  296.298 ms  298.876 ms
17  38.140.125.226 (38.140.125.226)  305.172 ms  309.067 ms  310.766 ms
18  10.254.0.90 (10.254.0.90)  317.569 ms  277.300 ms  277.377 ms
19  10.252.250.6 (10.252.250.6)  274.553 ms  275.082 ms  275.779 ms
20  10.252.250.66 (10.252.250.66)  274.110 ms  277.710 ms  279.409 ms
21  * * *
22  * * *
23  * * *
24  * * *
25  * * *
26  * * *
27  * * *
28  * * *
29  * * *
30  * * *

但不幸的是,跟踪路由结束于私有 IP 块,因此我们无法获得更多详细信息。

我对 Traceroute 的理解是,大多数人都可以使用它来找出他们无法访问特定域/IP 的原因。他们至少能够绘制出该实例所走的一些路径。如果有几次运行无法到达特定域,您就可以更好地寻求帮助。

我不明白 dnstraceroute 为用户带来了什么。我试图找出手册页并看到官方网站

我尝试了以下方法 -

[$] sudo dnstraceroute --expert -C -e -t A -s 8.8.4.4 phoronix.com                                                                  
dnstraceroute DNS: 8.8.4.4:53, hostname: phoronix.com, rdatatype: A
1   gateway (192.168.1.1) 1 ms
2   61.0.52.1 (61.0.52.1) 11 ms
3   218.248.164.106 (218.248.164.106) 7 ms
4   218.248.235.161 (218.248.235.161) 43 ms
5   218.248.235.162 (218.248.235.162) 49 ms
6   72.14.205.109 (72.14.205.109) 41 ms
7   debian.org (149.20.4.15) 23 ms
8   debian.org (149.20.4.15) 19 ms
9   google-public-dns-b.google.com (8.8.4.4) 119 ms

=== Expert Hints ===
 [*] No expert hint available for this trace

更新 - 如果我尝试 -

[$] sudo dnstraceroute --expert -C -e -t A -s 23.111.154.110

dnstraceroute version 1.4

usage: dnstraceroute [-h] [-q] [-a] [-s server] [-p port] [-c count] [-t type] [-w wait] hostname
  -h  --help      Show this help
  -q  --quiet     Quiet
  -e  --expert    Print expert hints if available
  -a  --asn       Turn on AS# lookups for each hop encountered
  -s  --server    DNS server to use (default: first system resolver)
  -p  --port      DNS server port number (default: 53)
  -c  --count     Maximum number of hops (default: 30)
  -w  --wait      Maximum wait time for a reply (default: 5)
  -t  --type      DNS request record type (default: A)
  -C  --color     Print colorful output

使用通常的罪魁祸首 nslookup 找到了 phoronix 的值/IP 地址。

[$] nslookup phoronix.com                                                                                                           
Server:     192.168.1.1
Address:    192.168.1.1#53

Non-authoritative answer:
Name:   phoronix.com
Address: 23.111.154.110

不幸的是,其跟踪路由的服务器是 google 而不是phoronix.com。要么文档是错误的,要么是我对该工具应该讲述的内容的理解是错误的。

有人可以告诉我哪里出错了吗?

答案1

dnstraceroute只是一个跟踪路由,用于显示 DNS 请求到达目的地所采用的路径。我猜这个工具是用来确保您的 DNS 流量不会流向不应该的地方,traceroute或者nslookup不支持此类功能。

添加--expert参数应该提供提示以表明潜在的劫持。

不幸的是,其跟踪路由的服务器是 google 而不是 phoronix.com

sudo dnstraceroute --expert -C -e -t A -s 8.8.4.4 phoronix.com

它必须回到谷歌8.8.4.4谷歌的公共DNS

相关内容