Linux 中使用 traceroute 命令跟踪目标地址

系统 Linux
在大多数 Linux 发行版中,traceroute 都没有被预安装,所以需要我们手动安装。

traceroute 类似于 ping 命令,但是提供了更详细的信息输出,它跟踪从原点到目标系统的路由。当你连接到某个远程系统时,数据会经过几个中间节点(比如你的路由器,ISP路由等等)的传输。

图片

traceroute 一般为系统管理员或者网络管理员用于对网络进行故障排除。

在 Linux 中安装 traceroute 

在大多数 Linux 发行版中,traceroute 都没有被预安装,所以需要我们手动安装。

如果你用的是 Ubuntu,可以使用如下命令安装:

sudo

如果你用的是 Fedora,可以使用如下命令:

sudo

下面,我们介绍几个使用 traceroute 的例子。

使用 traceroute 命令

我们先来介绍一个最基本的例子,使用 traceroute 命令跟踪一个主机名,它将显示到达目的地所需的路由器列表(带IP):

traceroute google.com

图片

如上图所示,它需要7个路由器才能到达目的地,默认情况下,它向每个路由器发送3个包,并返回响应所需的时间。

下面我们来看看其他几个例子。

1、配置等待时间

traceroute 中的默认等待时间为3秒,要修改这个时间,可以使用 -w 选项。比如,我们将等待时间改为 1 秒:

traceroute -w 1 google.com

图片

2、更改收发包的数量

默认情况下,traceroute 为一个跃点(hop)发送3个包,如果想更改此行为,可使用 -q 选项。

比如,我们我们将其改为4个数据包:

traceroute -q 4 google.com

图片

3、指定最大跃点数

在traceroute中,单个查询的默认最大跳数为30,可以扩展到255。使用 -m 选项:

traceroute -m 4 google.com

图片

4、指定 TTL

默认情况下,traceroute 将以第一个 TTL 开始,但您可以使用 -f 选项更改此行为。

如下例子,我们从第5个TTL开始跟踪 google:

traceroute -f 5 google.com

图片

5、添加备用源IP地址

使用-s 选项添加备用 IP 地址:

traceroute -s 192.168.1.7 google.com

图片​​

6、跟踪时禁用主机名映射到IP地址

如果出于某种原因希望在跟踪时禁用主机名映射,可以使用 -n 选项:

traceroute -n google.com

图片

7、通过网关路由包

可以在要跟踪路由的域时,使用 -g 选项指定网关地址。

比如,我们添加 192.168.1.7 作为网关地址:

traceroute -g 192.168.1.7 google.com

图片

8、更改目标端口

可以使用 -p 来指定要跟踪的目标端口:

traceroute -p 29879 google.com

图片

9、设置最大数据包长度

默认情况下,traceroute 跟踪的数据包长度为 60 字节(bytes),可以在目标地址后跟一个数字(即包大小)来修改:

traceroute google.com

图片

10、禁用探测数据包碎片(probe packet fragmentation)

如果你不想允许探测数据包碎片化,有一种简单的方法来实现这个目的,使用 -F 选项:

traceroute -F google.com

图片


如果你想要了解 traceroute 是如何工作的,可以参考另一篇指南,这个指南解释了 traceroute 的工作原理,地址如下:

​https://learnubuntu.com/traceroute/​

责任编辑:庞桂玉 来源: TIAP
相关推荐

2015-05-11 09:43:07

路由traceroute

2023-07-04 16:36:03

Linuxcd 命令

2023-07-23 19:26:18

Linuxcat 命令

2023-08-12 15:05:26

Linuxcp 命令

2021-01-04 05:43:59

LinuxBasename命令

2022-10-25 09:07:28

Linuxxargs命令

2018-06-26 09:15:24

Linux命令history

2018-05-16 10:32:06

Linux命令find

2022-11-18 10:16:26

Linuxwc 命令

2020-12-07 06:25:14

Linux Truncate 命令

2010-05-25 16:52:39

SVN中使用Git

2018-08-21 09:00:30

Linuxtop命令

2023-01-13 23:21:29

netcat命令Linux

2023-09-14 15:05:33

grep正则表达式

2021-01-13 09:40:26

Linuxexport命令

2012-05-08 11:11:43

Linuxcrontab命令

2010-01-04 10:10:00

2024-01-03 15:35:56

Linux工具Tail命令

2022-10-18 10:00:09

Linuxtcpdump命令

2010-06-01 19:24:40

SVN命令行
点赞
收藏

51CTO技术栈公众号