

嘿!兄弟们!
今天,我们聊一个网工必须会的命令,和ping在一个level:Tracert。
它能精确描绘数据包从源到目的地所经过的每一跳路由器(网关),并测量每一段的传输延迟。能把数据从你电脑到目标服务器的整条路看得明明白白,哪儿堵了哪儿绕了,一眼看穿!
今日文章阅读福利:《网工入门安装包》
扫码添加小助理微信,备注【入门】,即可获取。
01/ Tracert为啥比Ping还强?
Tracert 核心技能,就是把数据报文的路线给你画出来。咋做到的呢?
靠的是IP报文里的TTL(生存时间)机制 —— 就像给每个数据包包了个倒计时器,每经过一个路由器,TTL就减 1,当TTL减到0时,路由器就会返回一个超时通知。
具体操作贼clever:
1️⃣ 它先发送一个TTL=1的探测包,第一跳路由器收到后,发现TTL归零了,就返回一个ICMP超时消息,这就是第一站的地址;
2️⃣ 接着发TTL=2 的包,第二跳路由器返回超时,以此类推,直到到达目标服务器;
3️⃣ 最后目标服务器发现探测包的端口号(默认33434)不存在,就返回一个 “目的地不可达” 消息,宣告追踪结束。
这样一来,数据走过的每一个路由器节点、每个节点的延迟时间,全被Tracert 记在小本本上,形成一张 “路径地图”。相比 Ping 只能告诉你 “通不通”,Tracert 能告诉你 “怎么走、哪儿慢”!
02/ 不同系统咋用Tracert ?
▶ Windows:tracert 简单直接,参数跟着需求走
打开命令提示符(Win+R 输入 cmd),基本格式:
tracert [参数] 目标域名/IP
常用参数:
l-d:不解析节点域名,直接显示IP,速度更快;
l-h 数字:限定最大跳转次数(比如网络复杂时设小一点,避免绕圈);
l-w 数字:设置超时时间(毫秒),对付网络卡顿很有用。
例子:
追踪百度的路径,不解析域名,最多跳10次:
tracert -d -h 10 www.baidu.com
▶ Linux/Mac:traceroute 更灵活,参数玩法更多
终端输入命令,格式类似但参数名有区别:
traceroute [参数] 目标域名/IP
常用参数:
l-n:不解析域名(和Windows 的 - d 一样);
l-m 数字:限定最大跳数(对应Windows 的 - h);
l-p 端口:指定探测包的端口(默认UDP 33434,有时可用来测试特定端口连通性)
例子:
追踪腾讯官网,限定跳数15,显示端口信息:
traceroute -m 15 -p 80 www.qq.com
03/ Tracert 排障实战
案例①:网页打开慢如蜗牛
1️⃣ 现象描述:访问公司OA 系统时快时慢,Ping 延时偶尔飙到 500ms,但 Ping 网关又很稳定。
2️⃣ 排查操作:输入tracert oa.company.com,发现中间某一跳(比如第4 跳 10.10.10.10)的延时忽高忽低,有时显示* * *(超时)。
3️⃣ 原因分析:这说明第4 跳的路由器可能负载过高,或者链路质量差,导致数据在这里 “堵车”。
4️⃣ 解决办法:
① 联系该节点的网络管理员,检查路由器CPU / 内存占用,清理异常流量;
② 若链路问题,建议更换网线或升级带宽。
5️⃣ 总结:Tracert 能精准定位到具体哪一跳节点出问题,避免盲目排查。
案例②:路由环路让数据打环,Ping一直超时
1️⃣ 现象描述:Ping 远程服务器一直返回超时,用 Tracert 追踪发现路径在两个路由器间来回跳(比如 192.168.1.1 → 192.168.1.2 → 192.168.1.1 → …)。
2️⃣ 排查操作:Tracert 结果显示 TTL 在 1 和 2 之间循环,明显是环路。
3️⃣ 原因分析:检查路由器配置,发现管理员误将两条静态路由的下一跳设成了彼此(比如RouterA 指向 RouterB,RouterB 又指向 RouterA)。
4️⃣ 解决办法:
① 删掉错误的静态路由,重新配置正确的下一跳地址;
② 若用动态路由协议,检查OSPF/EBGP 的路由引入是否有误。
5️⃣ 总结:Tracert 看到重复节点,基本就是环路没跑了,比 Ping 更能快速定位问题根源。
案例③:某网站突然打不开,中间节点消失了
1️⃣ 现象描述:访问某电商网站时显示“无法连接”,Ping 域名能通,但 Tracert 到某一跳后全是* * *。
2️⃣ 排查操作:Tracert 结果显示前3跳正常(10.0.0.1 → 20.0.0.1 → 30.0.0.1),第4跳开始全超时,但目标IP能Ping通。
3️⃣ 原因分析:第4跳路由器可能开启了ICMP过滤(禁止TTL超时消息返回),或者链路中断但路由表未更新。
4️⃣ 解决办法:
① 联系该节点所属的网络服务商(比如运营商),确认链路是否正常;
② 若对方屏蔽了ICMP,可改用 TCP traceroute 工具(如 tcptraceroute)测试。
5️⃣ 总结:Tracert 遇到连续* * *,可能是节点禁了ICMP,也可能是链路故障,需结合其他工具验证。
04/ 玩转Tracert的小技巧
搭配Ping和Nslookup用:
先用Nslookup 确认域名解析正确,再用 Ping 看整体连通性,最后 Tracert 定位中间问题;
注意延时波动:
正常情况下各跳延时应相对稳定,若某一跳延时突然飙升,大概率是该节点拥塞;
夜间测试更准:
网络负载低时做Tracert,能排除日常流量高峰的干扰,更容易发现真实问题。
下次再遇网络卡顿,别光喊“重启路由器” 了,打开 Tracert 走一波,分分钟让隐藏的故障节点现出原形!兄弟们要是有啥 Tracert 排障的神操作,评论区甩出来,咱互相学学~