Linux 实例 | traceroute 网络路径跟踪全攻略:安装、场景、实操详解

域名特惠

引言

traceroute 是Linux 系统中最核心的网络排查工具,通过跟踪数据包从本地到目标的「跳数 + 延迟 + 丢包」,帮你快速定位「网络不通、延迟过高、丢包」等问题。比 ping 更详细(显示中间节点),是火山引擎 ECS 实例运维的必备利器。

本文以火山引擎 ECS 实例(CentOS 7/8、Ubuntu 20/22)为例,从「安装→场景→实操」全流程讲解,贴合火山引擎实际运维场景(如跨可用区路径、公网出口排查)。

一、前置准备

  1. 火山引擎 ECS 实例:已创建并运行(需 root 或 sudo 权限)
  2. SSH 工具:Putty、Xshell、MobaXterm 等
  3. 网络要求:
  • 实例需分配公网 IP(用于跟踪外部域名);
  • 若跟踪私网实例,需同 VPC / 可用区(火山引擎私网默认互通)。
    二、安装 traceroute(火山引擎实例实操)

traceroute 并非 Linux 默认工具,需安装对应软件包:

暂时无法在飞书文档外展示此内容

2.1 CentOS 7/8 安装验证

1. 登录火山引擎实例(替换为你的实例IP)ssh root@180.xx.xx.xx

2. 安装traceroute

yum install traceroute -y

3. 验证版本traceroute -V

2.2 Ubuntu 20/22 安装验证

1. 登录实例(Ubuntu默认用户为ubuntu)ssh ubuntu@180.xx.xx.xx

2. 安装traceroutesudo apt update && sudo apt install traceroute -y

3. 验证traceroute -V

三、核心使用场景(火山引擎实例贴合)

traceroute 解决运维中网络连通性 + 延迟 + 丢包的核心需求,结合火山引擎场景的常见用法:

暂时无法在飞书文档外展示此内容

四、常用命令 & 实操实例(火山引擎场景)

traceroute 核心语法:traceroute [参数] 目标地址

以下是贴合火山引擎实例的高频命令:

4.1 基础:跟踪火山引擎官网路径(UDP 默认)

场景:验证 ECS 实例到www.volcengine.com的路径

traceroute www.volcengine.com

输出说明:

  • 每一行对应一个「节点」(路由器 / 交换机);
  • 第一列:跳数(从 1 开始);
  • 第二列:节点 IP / 域名;
  • 第三列:3 次测试的延迟(ms);
      • *:表示该节点超时 / 丢包。
        4.2 用 TCP 协议(避免防火墙拦截 UDP)

场景:UDP 跟踪失败(比如中间节点封 UDP 33434),改用 TCP 80(HTTP 端口默认开放)

traceroute -T -p 80 www.baidu.com

参数:-T=TCP协议,-p=指定端口(80为HTTP)

4.3 跟踪火山引擎私网实例路径

场景:同 VPC 下,实例 A(172.16.0.10)跟踪实例 B(172.16.1.20)的私网路径

traceroute 172.16.1.20

注意:火山引擎私网默认互通,跨可用区路径会显示 VPC 网关节点。

4.4 带时间戳的 ICMP 跟踪(接近 ping)

场景:同时看延迟和时间戳,排查某时刻的丢包

traceroute -I -T www.aliyun.com

参数:-I=ICMP协议(更接近ping),-T=时间戳

4.5 批量跟踪云服务商域名(脚本化)

场景:同时跟踪火山引擎、阿里云、腾讯云官网的路径

创建批量脚本vim traceroute_batch.sh

写入内容:

#!/bin/bash# 批量域名列表DOMAINS=("www.volcengine.com" "www.aliyun.com" "www.tencent.com")for domain in D O M A I N S [ @ ] ; d o e c h o " = = = 跟踪域名: {DOMAINS[@]}; doecho "=== 跟踪域名: DOMAINS[@];doecho"===跟踪域名:domain ==="traceroute -T -p 80 $domain 2>&1 | head -10 # 只显示前10行echo "-------------------------"done

执行脚本:

chmod +x traceroute_batch.sh && ./traceroute_batch.sh

4.6 排查公网出口丢包(火山引擎公网 IP)

场景:实例公网 IP 为180.xx.xx.xx,跟踪到谷歌 DNS 的丢包

traceroute -T -p 53 8.8.8.8

参数:-p 53=DNS端口,避免被封

五、配置优化(可选)

5.1 添加别名简化命令

在~/.bashrc中添加常用别名:

vim ~/.bashrc

添加:alias trtcp='traceroute -T -p 80' # TCP 80跟踪alias tricmp='traceroute -I' # ICMP跟踪# 生效配置source ~/.bashrc

使用别名:trtcp www.volcengine.com

5.2 修改默认超时时间

默认每个节点超时为 5 秒,可改为 2 秒(加快跟踪速度):

traceroute -w 2 www.volcengine.com

参数:-w=超时时间(秒)

六、常见问题排查(火山引擎场景)

暂时无法在飞书文档外展示此内容

七、总结

traceroute 是火山引擎 Linux 实例网络排查的核心工具:

  • 清晰展示数据包路径,快速定位丢包 / 延迟节点;
  • 支持 TCP/ICMP 协议,适配不同防火墙场景;
  • 脚本化批量跟踪提升运维效率。

若需更深入分析,可结合火山引擎云监控→网络监控(查看实例公网带宽、延迟指标),实现全链路网络状态监控。

相关推荐
威联通网络存储3 小时前
告别掉帧与素材损毁:威联通 QuTS hero 如何重塑影视后期协同工作流
前端·网络·人工智能·python
mizuhokaga4 小时前
Linux内网集群基于Docker 安装 Chat2DB
linux·运维·docker
科士威传动4 小时前
微型导轨从精密制造到智能集成的跨越
大数据·运维·科技·机器人·自动化·制造
啃玉米的艺术家4 小时前
UART实验
网络
biubiubiu07064 小时前
Vibe Coding
运维
Ricky_Theseus4 小时前
数据库关系代数 - 连接操作
linux·数据库·算法
一招定胜负4 小时前
课堂教学质量综合评分系统
java·linux·前端
思为无线NiceRF5 小时前
UWB电子围栏方案:一体化设计,宠物防走失+训导双突破
网络
加密棱镜5 小时前
掘金 2026 网安市场:从合规驱动到创新驱动的投资机遇
网络
学不完的5 小时前
ZrLog 高可用架构监控部署指南(Prometheus + Grafana)
linux·运维·架构·负载均衡·grafana·prometheus·ab测试