本文详细讲解在 Ubuntu 26.04 中使用 traceroute 和 MTR 工具诊断网络延迟、丢包、路由异常问题,包含安装、常用命令、结果解读、实战案例,适合服务器运维与日常网络排障。
在 Ubuntu 26.04 运维和网络排错中,traceroute 和 MTR 是最常用的两个路由追踪工具。
- traceroute:一次性查看数据包从本机到目标服务器的每一跳路由。
- MTR:结合 ping + traceroute,持续监控每一跳的丢包率、延迟,更适合定位不稳定链路。
下面是完整、可直接复制的使用教程。
1. 安装工具
Ubuntu 26.04 默认可能未预装,执行安装:
sudo apt update
sudo apt install -y traceroute mtr
2. traceroute 使用方法
traceroute 会列出从本机到目标地址经过的所有网关(路由器),并显示每一跳的延迟。
基础用法
traceroute 目标IP或域名
示例:
traceroute www.baidu.com
traceroute 8.8.8.8
使用 UDP 探测(默认)
traceroute www.baidu.com
使用 ICMP 探测(更接近 ping,部分网络更准确)
traceroute -I www.baidu.com
指定数据包大小
traceroute -m 30 -w 2 www.baidu.com
-m 30:最大 30 跳-w 2:超时等待 2 秒
结果字段说明
- 第 1 列:跳数(第几个路由节点)
- 域名 / IP:路由节点地址
- 三次延迟:探测 3 次的延迟时间(ms)
* * *:该节点禁 ICMP/UDP,不响应
3. MTR 使用方法(更强大,推荐排障用)
MTR 会持续发包,实时统计每一跳的:
- 丢包率 Loss%
- 平均延迟 Avg
- 最差延迟 Wrst
- 最后一次延迟 Last
基础实时监控
mtr 目标IP或域名
示例:
mtr www.baidu.com
退出后生成报告(最常用)
mtr --report www.58jb.com
运行 100 个包后输出报告
mtr --report -c 100 www.58jb.com
使用 ICMP 模式(兼容性更好)
mtr --tcp -P 80 www.58jb.com
mtr -I www.58jb.com
结果关键字段
- Loss%:丢包率(越高网络越差)
- Avg:平均延迟
- Wrst:最大延迟(突增延迟看这里)
- Last:最近一次延迟
4. 如何判断网络故障(实战技巧)
情况 1:某一跳出现 * * *
- 该路由器禁止响应探测,不代表网络故障
- 只要后面跳数正常,就不用管
情况 2:某一跳开始持续丢包
- 说明该路由节点拥堵 / 故障
- 是运营商骨干网问题或目标服务器防火墙限制
情况 3:最后几跳丢包
- 目标服务器防火墙禁 ICMP
- 或目标服务器负载过高
情况 4:国内访问国外高丢包
- 国际出口拥堵,属于运营商线路问题
- 可切换线路或使用国内镜像 / CDN
5. 典型排障流程(运维标准)
- ping 目标,看是否通
- mtr 看哪一跳丢包
- traceroute 确认路由走向
- 判断是本地、运营商、还是目标服务器问题
6. 常用组合命令
# 快速报告
mtr --report -c 50 www.58jb.com
# 追踪路由并保存日志
traceroute www.58jb.com > trace.log
# TCP 模式 MTR(绕过部分防火墙)
mtr --tcp -P 443 github.com
总结
- traceroute:一次性查看路由路径,简单快速
- MTR:持续监控,定位丢包 / 延迟波动,排障首选
- Ubuntu 26.04 安装即用,适合服务器、云主机、家庭网络排错