我怎样才能在结果中显示剩余的time to live
计数器?mtr
traceroute
$ mtr -r -w -c 10 91.250.127.30
Start: Mon May 15 12:20:44 2017
HOST: <snip> Loss% Snt Last Avg Best Wrst StDev
1.|-- <snip----> 0.0% 10 22.9 19.9 0.3 22.9 6.8
2.|-- <snip---snip> 0.0% 10 24.9 22.8 21.6 27.7 1.9
3.|-- 217.237.154.226 0.0% 10 23.9 23.9 21.6 25.4 1.2
4.|-- 217.239.53.234 0.0% 10 39.3 38.4 34.9 41.8 2.1
5.|-- 80.157.207.130 0.0% 10 40.5 45.8 40.4 79.2 11.8
6.|-- ae5.cr-nashira.cgn4.core.heg.com 0.0% 10 34.9 38.3 34.0 73.0 12.2
7.|-- ae4.dr-master.cgn4.mass.systems 0.0% 10 35.5 37.7 34.1 66.6 10.1
我能否确定哪一跳 TTL 减少最多?有没有办法将 TTL 显示为输出字段?
可以nmap
提供报告 TTL 吗?
编辑:@ilkkachu 提到了--back
debian traceroute
,这很有帮助。
答案1
TTL 每跳或每秒减少 1。后者可能很少见,除非您有一些非常慢的链接或非常大的缓冲区。此外,traceroute 的作用是发送 TTL 不断增加的数据包,因此输出中会隐式显示减少的情况,因此,如果路由的某些部分 TTL 减少超过 1,或者路由器不会发送 ICMP 错误,那么它会显示为空行。
# traceroute -I 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
1 somerouter (...) 1.018 ms 1.118 ms 1.365 ms
2 * * *
3 otherrouter (...) 9.436 ms 9.464 ms 9.466 ms
4 se-tug.nordu.net (109.105.102.102) 15.814 ms 15.821 ms 15.823 ms
5 netnod-ix-ge-a-sth.google.com (194.68.123.115) 16.200 ms 16.205 ms 16.244 ms
6 216.239.40.27 (216.239.40.27) 16.087 ms 16.038 ms 16.057 ms
7 209.85.242.47 (209.85.242.47) 16.682 ms 19.965 ms 20.142 ms
8 google-public-dns-a.google.com (8.8.8.8) 16.386 ms 16.306 ms 16.306 ms
这里,第 2 跳的路由器没有应答,因此 Traceroute 收到了 TTL 1 和 TTL 3 的数据包的回复,但没有收到 TTL 2 的数据包的回复。