traceroute 指令 — 路由跟踪工具


traceroute 是一个网络检测工具, 可以追踪网络封包经过的路由指令。例如当发现浏览一个网站很慢, 使用 traceroute 检查时, 可以显示经过的每一个网络节点, 以及每个节点返回的时间。traceroute 会对经过的网络设备送出封包 3 次, 测试所需的时间, 而返回的时间单位是 ms。(注: 在 Windows 不是用 traceroute, 是用 tracert)

Redhat 及 CentOS 默认没有安装 traceroute, 先用用 yum 安装:

# yum install traceroute -y

之后便可以使用 traceroute, 使用 traceroute 的方法很简单, 只要在 traceroute 后面加上 ip 或 hostname 便可以, 例如:

$ traceroute google.com

执行后会返回类似以下的结果:

上面看到每经过一个网络设备, 就会有一行纪录, 第一栏 ip 及 hostname, 然后是 3 次测试封包的返回时间。

如果有某一个节点有 packet loss 的情况, 那行会回应 “* * *”,

一般情况 traceroute 用默认值也可以, 以下是 traceroute 一些常见可用的参数。

traceroute 默认会对每个网络设备测试 3 次, 要改变测试次数, 用 -q 参数加上测试次数, 例如:

$ traceroute -q 1 google.com

返回的结果里面, 每个网络设备只有一次测试时间:

用 IPv6 traceroute, 加上 -6 参数:

$ traceroute -6 ipv6.google.com

Leave a Reply