traceroute命令详解linux
-
traceroute命令是用于网络诊断的一个工具。它可以显示数据包从本地计算机到目标服务器的路径,并测量每个跃点的延迟。下面详细介绍traceroute命令的使用方法和参数。
使用traceroute命令的基本语法如下:
“`bash
traceroute [选项] 目标IP地址或域名
“`选项说明:
– `-n`:以IP地址形式显示路径,不解析域名。
– `-w 毫秒`:设置超时时间,单位为毫秒。
– `-q 数目`:设置每个跃点发送数据包的数量。
– `-m 跃点数`:设置最大查询跃点数。
– `-p 端口号`:指定发送数据包的目标端口号。示例1:显示数据包路径并测量延迟
“`bash
traceroute http://www.baidu.com
“`
结果示例:
“`
1 192.168.0.1 (192.168.0.1) 1.235 ms 0.597 ms 0.578 ms
2 10.0.0.1 (10.0.0.1) 2.486 ms 1.875 ms 1.991 ms
3 218.30.32.1 (218.30.32.1) 3.228 ms 3.158 ms 4.265 ms
4 202.106.36.137 (202.106.36.137) 11.409 ms 13.832 ms 10.427 ms
5 202.97.22.81 (202.97.22.81) 10.481 ms 9.876 ms 9.787 ms
6 61.148.158.25 (61.148.158.25) 13.757 ms 11.049 ms 10.319 ms
7 61.147.61.246 (61.147.61.246) 19.697 ms 15.737 ms 14.851 ms
8 202.97.50.33 (202.97.50.33) 30.205 ms 29.978 ms 29.917 ms
9 * * *
10 202.97.34.242 (202.97.34.242) 75.549 ms 75.372 ms 76.041 ms
11 220.181.16.86 (220.181.16.86) 72.976 ms 70.411 ms 68.923 ms
12 220.181.17.62 (220.181.17.62) 97.795 ms 96.034 ms 98.814 ms
13 220.181.17.66 (220.181.17.66) 111.986 ms 111.726 ms 114.523 ms
14 * * *
15 * * *
16 * * *
17 * * *
“`
上述示例中,每个跃点都显示了对应的IP地址和延迟时间。示例2:使用IP地址形式显示路径
“`bash
traceroute -n 8.8.8.8
“`
结果示例:
“`
1 192.168.0.1 1.235 ms 0.597 ms 0.578 ms
2 10.0.0.1 2.486 ms 1.875 ms 1.991 ms
3 218.30.32.1 3.228 ms 3.158 ms 4.265 ms
4 202.106.36.137 11.409 ms 13.832 ms 10.427 ms
5 202.97.22.81 10.481 ms 9.876 ms 9.787 ms
6 61.148.158.25 13.757 ms 11.049 ms 10.319 ms
7 61.147.61.246 19.697 ms 15.737 ms 14.851 ms
8 202.97.50.33 30.205 ms 29.978 ms 29.917 ms
9 * * *
10 202.97.34.242 75.549 ms 75.372 ms 76.041 ms
11 220.181.16.86 72.976 ms 70.411 ms 68.923 ms
12 220.181.17.62 97.795 ms 96.034 ms 98.814 ms
132年前 -
Traceroute是一个用于确定数据包从源地址到目标地址的路径的网络诊断工具。它通过向目标地址发送一系列的数据包,并记录每个数据包经过的路由器。这个过程帮助用户确定网络中的瓶颈和延迟,并诊断网络连接的问题。在Linux系统中,可以使用traceroute命令来执行这个任务。下面将详细介绍Linux中的traceroute命令。
1. 语法和基本用法:
在终端中输入以下命令来执行traceroute:
“`
traceroute [选项] 目标地址
“`
示例:
“`
traceroute http://www.example.com
“`选项可以是:
– `-m`:设置最大跳数(默认是30)
– `-n`:不解析IP地址为域名
– `-q`:设置每个跳点发送数据包的数量
– `-w`:设置等待每个跳点回应的时间2. 解析结果:
Traceroute命令执行完成后,会返回一系列的结果,每个结果都表示一个跳点。每个跳点都包含了IP地址、域名、发出数据包的时间和每个跳点的延迟。3. 显示IP地址而非域名:
默认情况下,traceroute命令会将IP地址解析为域名。如果想显示IP地址而非域名,可以使用`-n`选项。4. 设置最大跳数:
Traceroute命令默认的最大跳数是30。如果要设置不同的最大跳数,可以使用`-m`选项。5. 跟踪UDP, ICMP或TCP数据包:
默认情况下,traceroute命令使用UDP数据包来跟踪路径。如果要使用ICMP或TCP数据包进行跟踪,可以使用`-I`或`-T`选项。这些是traceroute命令的一些常用选项和用法。通过使用这些选项,可以更加详细地了解网络连接的路径和延迟。在解决网络连接问题时,traceroute命令是一种非常有用的工具。
2年前 -
一、什么是traceroute命令
traceroute是一个网络诊断工具,用于跟踪数据包在IP网络中的传输路径。它通过向目标主机发送一系列的ICMP请求,然后根据返回的ICMP回复来确定数据包更新目标主机的路由路径。traceroute命令可以帮助我们分析网络延迟和网络路由问题,以便排除故障。
二、traceroute命令的使用方式
traceroute命令的基本语法是:
traceroute [选项] 目标主机
常用选项:
-4:使用IPv4地址;
-6:使用IPv6地址;
-F:设置首字节的TTL;
-I:使用ICMP回复;
-m:设置最大的跃点数;
-n:直接使用IP地址而不进行主机名称解析;
-p:设置ICMP回复的起始端口号;
-q:设置请求发送间隔的秒数;
-w:设置每个跃点的等待时间。三、traceroute命令的操作流程
1. 向目标主机发送第一个ICMP请求数据包,设置首字节的TTL值为1;
2. 第一个路由器收到数据包后,将其TTL值减1,然后检查发现TTL为0,将发送一条“超时”(TTL expired)的ICMP回复;
3. traceroute命令接收到“超时”回复后,记录下第一个路由器的IP地址和响应时间,并向目标主机再次发送一个TTL值为2的ICMP请求数据包;
4. 第二个路由器收到数据包后,将其TTL值减1,发现TTL为0,同样发送一个“超时”ICMP回复;
5. traceroute命令继续重复上述步骤,直到到达目标主机或者达到最大的跃点数或者超时;
6. 返回traceroute命令的结果,显示每个跃点的IP地址和响应时间。四、traceroute命令的常用参数
1. -4:指定使用IPv4地址进行跟踪;
2. -6:指定使用IPv6地址进行跟踪;
3. -F:设置首字节的TTL值;
4. -I:使用ICMP回复;
5. -m:设置最大的跳数;
6. -n:直接使用IP地址而不进行主机名称解析;
7. -p:设置ICMP回复的起始端口号;
8. -q:设置请求发送间隔的秒数;
9. -s:指定源IP地址;
10. -w:设置每个跃点的等待时间。五、traceroute命令的实例
1. traceroute命令的基本用法
traceroute http://www.baidu.com
2. 使用IPv6地址进行跟踪
traceroute -6 http://www.google.com
3. 设置最大的跳数为20
traceroute -m 20 http://www.sina.com
4. 直接使用IP地址而不进行主机名称解析
traceroute -n 192.168.0.1
5. 设置请求发送间隔的秒数为0.5
traceroute -q 0.5 http://www.taobao.com
六、traceroute命令的注意事项
1. 使用traceroute命令可能会给目标主机带来一定的负载,因此在网络拥塞时需要谨慎使用;
2. 部分网络设备或防火墙可能会过滤或丢弃traceroute命令发送的ICMP请求,导致无法获得准确的路由信息;
3. 在进行网络诊断时,最好结合其他网络诊断工具和命令使用,以获得更准确的结果。2年前