【Linux】Linux命令:traceroute
目录
- 1、作用
- 2、命令使用格式
- 3、常用参数说明
- 4、示例
1、作用
traceroute
命令通过使用TTI
的超时机制和ICMP
的出错信息的通报机制, 显示数据包从本地主机到目标主机间的路由路径。
traceroute
命令执行的过程:首先它发送一份TTL
为 1 的IP数据包给目的主机,处理这个数据包的第一个路由器将TTL
值减1,因为TTL
变为了0,所以路由器丢弃该数据报,并给源主机发送一个ICMP
报文(这个报文包含了路由器的IP地址,这样就得到了第一个路由器的地址);然后继续发送一个TTL
为 2 的IP数据包,获取到第二个路由器的IP地址;继续这个过程,直至IP数据包能到达目的主机。整个流程下来,就记录了数据包从本地主机到目标主机间的路由路径。
2、命令使用格式
traceroute [options]
options
:参数ip
:主机名或IP地址
3、常用参数说明
-f <存活数值>
:设置第一个检测数据包的存活数值TTL的大小。-m <存活数值>
:设置检测数据包的最大存活数值TTL的大小。-w <超时秒数>
:设置等待远端主机回报的时间。-x
:开启或关闭数据包的正确性检验。
4、示例
# traceroute www.google.com
traceroute: Warning: www.google.com has multiple addresses; using 66.249.89.99
traceroute to www.l.google.com (66.249.89.99), 30 hops max, 38 byte packets
1 192.168.0.1 (192.168.0.1) 0.653 ms 0.846 ms 0.200 ms
2 118.250.4.1 (118.250.4.1) 36.610 ms 58.438 ms 55.146 ms
3 222.247.28.177 (222.247.28.177) 54.809 ms 39.879 ms 19.186 ms
4 61.187.255.253 (61.187.255.253) 18.033 ms 49.699 ms 72.147 ms
5 61.137.2.177 (61.137.2.177) 32.912 ms 72.947 ms 41.809 ms
6 202.97.46.5 (202.97.46.5) 60.436 ms 25.527 ms 40.023 ms
7 202.97.35.69 (202.97.35.69) 40.049 ms 66.091 ms 44.358 ms
8 202.97.35.110 (202.97.35.110) 42.140 ms 70.913 ms 41.144 ms
9 202.97.35.14 (202.97.35.14) 116.929 ms 57.081 ms 60.336 ms
10 202.97.60.34 (202.97.60.34) 54.871 ms 69.302 ms 64.353 ms
11 * * *
12 209.85.255.80 (209.85.255.80) 95.954 ms 79.844 ms 76.052 ms
MPLS Label=385825 CoS=5 TTL=1 S=0
13 209.85.249.195 (209.85.249.195) 118.687 ms 120.905 ms 113.936 ms
14 72.14.236.126 (72.14.236.126) 115.843 ms 137.109 ms 186.491 ms
15 nrt04s01-in-f99.1e100.net (66.249.89.99) 168.024 ms 140.551 ms 161.127 ms
注: 有时我们traceroute
一台主机时,会看到有一些行是以星号表示的。出现这样的情况,可能是防火墙封掉了ICMP
的返回信息,所以我们得不到什么相关的数据包返回数据。`