traceroute命令用法

时间:2020-02-23 14:40:36  来源:igfitidea点击:

traceroute是一个有用的命令,因为它允许我们了解连接的路由。
该实用程序可以更好地弄清楚网络,并且如果有的话,也发现问题。
在简单的单词中,Traceroute在使用时打印出从原点到目的地的请求的完整路由。

在本教程中,我们将学习如何使用示例使用traceroute命令。
但是,在我们运行traceroute命令之前,让我们了解它是如何工作的。

Traceroute如何工作

Traceroute可能看起来很简单,但以一种复杂的方式工作。
TRACEROUTE实用程序使用IP标头的TTL字段来使所有魔法发生。
TTL字段确定在丢弃之前可以在网络中拍摄的跳数。
简单来说,它建立了一个数据包的寿命。

TTL字段的默认值为64或者32.每次中间路由器持有数据包时,其值会减少1.当最终路由器以TTL值1的接收到1时,丢弃数据包。
丢弃后,路由器生成ICMP错误消息,并与路由器的IP地址一起发送到数据包的原点。

Traceroute使用此行为。
它首先发送具有TTL值1的数据包,然后逐步增加它。
每当中间路由器接收具有TTL值1的数据包时,它会丢弃它并将ICMP错误消息与IP地址一起发送并发送。
这样,包路由从其源点到目的地确定。

Traceroute

让我们看看如何在Linux中使用Traceroute。
为简单起见,我们将使用Ubuntu。

语法

traceroute实用程序命令的语法如下。

traceroute [options] address [path-length]

通常,Linux操作系统配有预装的Traceroute。
但是,如果不存在,那么我们可以使用以下任何命令安装它。

sudo apt install inetutils-traceroute
sudo apt install traceroute

让我们尝试在Google.com上使用Traceroute,没有任何选项和路径长度。

traceroute google.com

在Google.com上运行traceroute命令

或者,我们还可以提供要跟踪包的Google.com或者服务器的IP地址。

让我们试着了解下面的traceroute命令的响应或者输出。

  • 输出的第一行告诉我们IP-address(上面的172.217.163.46)和我们正在跟踪的服务器的主机名(Google.com)。它还告诉我们HOPS(30)和数据包大小以字节(60字节)。
  • 所有下一行都是关于导致目的地的每一条线。首先给出每个跳号和地址。然后,显示了往返时间,这是包跳跃并返回原点所需的时间。

三次往返响应时间适用于Traceroute发送的三个数据包。

我们还可以使用-q选项设置要发送的数据包数。

traceroute google.com -q 4

更改Traceroute命令发送的数据包数

在上面的示例中,Traceroute达到了目的地(检查Google.com服务器IP地址和在最后一行中的IP地址提及 - 它们都应该匹配)。
但是,这可能并不总是如此。
如果服务器无法访问,则它将以* * *的形式输出。

Traceroute使用选项

Traceroute确实有一些有用的选项。

Traceroute与IPv6.

我们可以使用IPv6协议进行三架构。
为此,我们需要使用-6选项。

traceroute -6 google.com

Traceroute与IPv4.

要使用IPv4协议进行跟踪,请使用以下命令。

traceroute -4 google.com.

隐藏主机名和IP地址

我们还可以隐藏输出中的IP地址和主机名。
为此,请使用-n选项的traceroute命令。

traceroute -n google.com

traceroute -n选项隐藏主机名和IP地址

设置等待响应时间

要设置等待响应时间,我们需要使用-w选项。
等待选项确定在发出探测之前应该等待多长时间。

让我们看看等待响应时间到下面的2秒。

traceroute -w 2 google.com

指定要使用的接口

如果我们使用的是要连接到Internet的多个网络接口,则可以在执行Traceroute时指定要使用的界面。
我们需要使用-i选项。

traceroute -i interface-name address