Linux - How to Troubleshoot Network Issues Using MTR
MTR helps you identify:
-
High latency
-
Packet loss
-
Routing issues
-
ISP problems
-
Server-side issues
It gives real-time visibility across each hop between you and the destination.
STEP 1 — Run MTR
Basic:
Report mode (recommended for analysis):
STEP 2 — Understand the MTR Output
Typical output:
STEP 3 — Identify the Problem Using These Rules
RULE 1: Packet loss on the FIRST hop → YOUR NETWORK issue
Example:
Meaning:
-
Your Wi-Fi/router/cable is bad
-
Weak signal
-
Local congestion
Fix: Restart router, switch to LAN, check cables.
RULE 2: Packet loss on MIDDLE hop AND all hops after it → ISP issue
Example:
Meaning:
-
The third hop (ISP router) is failing
-
All downstream hops also show the same loss
Fix: Only your ISP can fix this.
RULE 3: Packet loss on a hop BUT NOT on later hops → ignore
Example:
Meaning:
-
The router is just deprioritizing ICMP
-
It is NOT dropping real traffic
NO issue here.
RULE 4: Consistently HIGH latency starting at a hop → congestion/problem at that hop
Example:
Meaning:
-
Routing congestion or overloaded router
Fix: Contact ISP or hosting provider.
RULE 5: High latency ONLY at the final hop → server issue
Example:
Meaning:
-
Destination server is slow or overloaded
Fix: Check server CPU, traffic load, firewall throttling.
STEP 4 — Match the Issue with the Right Action
| Symptom | Root Cause | Fix |
|---|---|---|
| Loss on hop 1 | Wi-Fi/router issue | Restart router, use cable |
| Loss on middle hops & persists | ISP issue | Raise support ticket |
| Latency spikes throughout | Wi-Fi interference | Switch channel, move closer |
| Latency spike starting at hop X | Routing problem | Ask ISP/data center |
| Loss only on last hop | Server overloaded | Check server resources |
| ICMP loss but no final loss | Normal router behavior | Ignore |
STEP 5 — When to use different MTR modes
ICMP mode (default)
Good for most cases:
TCP mode (when ICMP is blocked)
UDP mode
Example Scenarios
Scenario 1 — Slow internet browsing
Run:
If hop 1 shows 20–50% loss → router issue.
Scenario 2 — Slow website hosted in AWS
Run:
If loss starts at AWS backbone → AWS routing issue.
Scenario 3 — Only one website is slow
Ping is fine but high last-hop latency → server issue.