我了解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