一上来就追路由,盯了半天星号

用户说访问卡,我第一反应是打开路由追踪,看路径怎么走。结果中间几跳全是星号,又去找那几台设备,耗了大半天。

回过头才发现,我连「到底有多卡」都没测。ping 一下就知道延迟和丢包,比追路径快得多。那次之后我把顺序调了过来。

一个看终点,一个看路径

Ping 是端到端:从你这儿到目标,一个来回要多久,丢不丢包。丢包率要连续多轮才有意义。

路由追踪是逐跳:包经过哪些设备,在哪一跳之后延迟开始抬。

前者给结论,后者给解释,用宝塔拨测的控制台从多个节点同时跑,比在本地一个个试快得多。先有结论,再决定要不要解释,这个顺序能省一半时间。ping 只能说明 ICMP 可达,服务是否可用还要看端口和 HTTP;追踪只能说明路径,告诉不了你带宽和丢包率。

宝塔拨测控制台:定时拨测任务、节点与告警配置

宝塔拨测控制台:定时拨测任务、节点与告警配置

为什么先 ping

因为便宜、快、结果直接。

ping 正常,多数情况下不用追路径,能省下不少时间。

ping 异常,再看是延迟高还是丢包,丢包是持续还是偶发。这些判断都不需要追踪,先把范围缩小再谈路径。

什么时候必须追踪

需要知道绕行的时候。比如同样在国内,路径绕到了境外,这是追踪最典型的用途。

需要判断责任段的时候。多个入口的路径在某跳分叉,分叉后出问题,方向就明确了。

需要在两个运营商之间对比的时候,路径能解释差异从哪来。多点对照,比单条路径有说服力。

什么时候不用

应用层慢,ping 和追踪都帮不上,得看 HTTP 分段。

带宽问题,它们也测不出来,别拿这两个工具去测带宽,方向本身就错了。

目标屏蔽 ICMP 时,ping 全是超时,追踪也一堆星号,这时候换 TCP 探测更实际。配任务时把 ping 和 TCP 两种探测都放进去,能互相印证。

复测和记录

两个工具都建议多跑几次,单次结果容易误导。单点结果很容易被偶然因素带偏,比如某条线路临时维护,恰好被你赶上。

记录里写清时间、入口、目标,以及各自的结论:延迟多少、丢包多少、从哪跳开始异常。格式统一,后面才有对比价值,截图不如文字,文字不如表格。

工具是回答问题的,不是用来展示的。先想清楚要回答什么问题,再选合适的工具,别急着上手点按钮。工具会换,方法不会,先学方法再选工具,这也是我带新人时最先讲的一点。把结论写清楚,比堆一堆数据重要得多。