Short answer: Juniper devices have a real MTR built in: traceroute monitor. Cisco IOS, IOS XE and ASA don't, so use traceroute plus repeated pings. For an outside view of the path to any of them, run a free online MTR.
Juniper Junos: traceroute monitor
user@srx> traceroute monitor 8.8.8.8 count 100 source 203.0.113.10 no-resolve
user@srx> traceroute monitor 8.8.8.8 summary count 100
- The output has the same columns as Linux mtr: Loss%, Snt, Last, Avg, Best, Wrst, StDev.
summaryprints one report at the end, which is handy for pasting into a ticket.- Press Q to stop a continuous run.
Cisco IOS and IOS XE
Router# traceroute 8.8.8.8 source GigabitEthernet0/1
Router# ping 8.8.8.8 source GigabitEthernet0/1 repeat 100
Type traceroute on its own for extended traceroute, which prompts for source, probe count, timeout and TTL range. After the trace, ping the destination with repeat 100. If it shows loss, ping the earlier hops to find where loss begins and continues.
Cisco ASA
asa# traceroute 8.8.8.8
asa# ping outside 8.8.8.8 repeat 100
By default an ASA doesn't decrement TTL for transit traffic, so it's invisible in traceroutes that pass through it. That's normal, not a fault.
Outside-in testing
Run the HardcoreDebug MTR to the device's public IP or VPN endpoint with TCP on an allowed port. Then compare it with traceroute monitor or ping results from the device itself.
Frequently asked questions
Does Juniper have MTR?
Yes. Junos traceroute monitor <host> is a built-in MTR. It shows Loss%, Snt, Last, Avg, Best, Wrst and StDev for each hop. Press Q to stop.
Does Cisco IOS have MTR?
No. Use extended traceroute (type traceroute with no arguments for the interactive prompts) and repeated pings with a source interface to build the same picture.
How do I traceroute from a Cisco ASA?
Use traceroute <ip>. Remember the ASA does not decrement TTL for traffic passing through it by default, so it may not appear as a hop in traceroutes run through it.