登录
首页 >  文章 >  linux

Linux追踪路由路径方法及traceroute使用教程

时间:2026-05-20 10:50:25 113浏览 收藏

在Linux系统中诊断网络延迟和追踪数据包路径时,有五种高效实用的工具可供选择:经典的traceroute(支持IPv4/IPv6)、实时动态监测的mtr、可穿透UDP防火墙的tcptraceroute、无需root权限且自带MTU发现功能的tracepath,以及专为IPv6优化的traceroute6——无论您面临DNS解析延迟、防火墙拦截、权限限制还是链路稳定性问题,这些工具都能精准定位路由瓶颈、识别中间节点异常,并提供清晰直观的逐跳分析,是运维人员和网络爱好者不可或缺的排障利器。

Linux怎么追踪路由路径 Linux使用traceroute诊断网络延迟【进阶】

如果您在Linux系统中需要诊断网络延迟并确定数据包从源主机到目标主机所经过的路径,则可以使用traceroute工具来追踪路由路径。以下是实现此目的的多种方法:

一、使用traceroute命令追踪IPv4路由路径

traceroute通过发送具有递增TTL(Time To Live)值的数据包,利用中间路由器返回的ICMP“超时”消息,逐跳识别路径上的每一台设备。该命令默认基于UDP探测,适用于大多数IPv4网络环境。

1、打开终端,输入以下命令并回车:traceroute example.com

2、若需指定探测包数量,添加-c参数:traceroute -c 3 example.com

3、如需以IP地址形式显示结果(避免DNS解析延迟),添加-n参数:traceroute -n example.com

二、使用traceroute命令追踪IPv6路由路径

当目标主机仅支持IPv6或网络链路为纯IPv6环境时,需使用专门的IPv6版本traceroute命令,确保协议匹配与正确响应解析。

1、确认系统已安装支持IPv6的traceroute(通常为traceroute6或traceroute -6):

2、执行IPv6追踪:traceroute6 example.com

3、或使用统一命令加协议标识:traceroute -6 example.com

三、使用mtr实时动态追踪路由路径

mtr是traceroute和ping的结合体,持续发送探测包并实时更新每跳的丢包率、延迟波动与响应状态,适合长时间观测链路稳定性。

1、安装mtr(如未预装):sudo apt install mtr(Debian/Ubuntu)或sudo yum install mtr(CentOS/RHEL)

2、启动交互式mtr界面:mtr example.com

3、在运行界面中按s键切换排序方式,按r键刷新统计,按q退出

四、使用tcptraceroute绕过UDP过滤策略

某些网络出口防火墙会拦截UDP探测包,导致traceroute无法获取完整路径。tcptraceroute改用TCP SYN包进行探测,可穿透多数基于UDP限制的安全策略。

1、安装tcptraceroute:sudo apt install tcptraceroute(Debian/Ubuntu)

2、对标准HTTP端口发起TCP追踪:sudo tcptraceroute example.com 80

3、如需指定源端口以适配特定ACL规则:sudo tcptraceroute -p 54321 example.com 443

五、使用tracepath替代无root权限场景

tracepath无需root权限即可运行,内置于iproute2套件,使用UDP探测且自动处理路径MTU发现,适合受限权限用户快速诊断基础路由问题。

1、直接执行追踪:tracepath example.com

2、指定最大跳数限制输出长度:tracepath -m 20 example.com

3、禁用反向DNS解析提升响应速度:tracepath -n example.com

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于文章的相关知识,也可关注golang学习网公众号。

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>