Traceroute有什么用?
它只回答一个问题
traceroute 只回答一件事。 从我这台机器到目标。中间过哪些跳。 然后每一跳回我多少毫秒。 别的它不答。
我一开始以为是另一回事
我一开始以为它能定位责任。 跑完一看。某一跳 200ms。 就觉得是那家运营商的问题。 试了半天才发现。不是。 那一跳慢。不代表问题就在那一跳。也不代表是它弄的。 我后来才知道。很多路由器回 icmp 是低优先。

这次的数据摆出来
30 个节点跑了两轮。平均 25ms 上下。 丢包全是 0%。 慢的那几台很集中。 江苏南通电信 225ms。第二轮 220ms。两轮都在。 山东临沂联通 265ms。四川成都移动 209ms。210ms。 最快 1ms。广东韶关移动。
从哪一跳开始变大
先看第一跳是不是自己内网。 再看哪一跳的数值突然跳上去。 跳上去的那一跳。就是分界点。它前一跳还正常。 分界点之前那几跳。是我这边的网络。 分界点之后。是对方那边。 这里要注意。中间路由器可能限速 icmp。 限速了。数就虚高。这时候别信。
它看不到的东西
它看不到带宽是多少。 它看不到包丢在哪一段。 它也看不到 http 层的慢。 那么 tcp 和 ttfb 这些。它一个都答不了。 traceroute 走的是 icmp。业务跑的是 tcp。两套东西。

我的用法
先 ping。看延迟和丢包。 不对。再跑 traceroute 找那个分界点。 然后用宝塔拨测的网站测速。 换几个地区跑一轮。看是不是普遍。 三步走完。再判断是线路的事还是站点的事。别跳步。跳了看不出差别。 只有一跳高的时候。我不下结论。
traceroute 给的是路径。不是答案。