When your internet connection slows to a crawl, or a specific website refuses to load, it is easy to blame your router or your internet service provider (ISP). However, the internet is not a single, direct pipeline. It is a vast, complex web of interconnected routers, servers, and switches. When you attempt to access a website on your Mac, your data packets must leap across dozens of intermediate devices to reach their destination.
If one of these hops is congested, misconfigured, or offline, your entire connection suffers. To find exactly where the breakdown is occurring, network engineers and system administrators rely on a diagnostic tool called traceroute.
In this comprehensive guide, we will explore how to run a trace route in Mac OS. Whether you are using a modern Apple Silicon Mac running macOS Sonoma, macOS Sequoia, or an older Intel-based Mac running legacy OS X, you will learn the exact steps to map your network path, understand the terminal output, identify bottlenecks, and use advanced command line options to troubleshoot like an enterprise network administrator.
Understanding the Anatomy of a Route Trace on Mac
Before running any commands, it is essential to understand what a trace route on a mac actually does.
When you initiate a traceroute, your Mac sends a sequence of diagnostic packets toward your target destination (such as a website or a server's IP address). Each packet is configured with a specific "Time to Live" (TTL) value. TTL is not a measurement of seconds; rather, it is a hop counter.
Here is how the packet lifecycle works under the hood:
- Hop 1 (TTL = 1): Your Mac sends a packet with a TTL of 1. The very first router it hits (usually your home or office router) decrements the TTL by 1. Because the TTL is now 0, the router discards the packet and sends back an ICMP "Time Exceeded" error message. Your Mac records the router's IP address and the round-trip time (RTT).
- Hop 2 (TTL = 2): Your Mac sends a new packet with a TTL of 2. It passes through your local router (which reduces TTL to 1) and reaches the next router in your ISP's network. That second router decrements the TTL to 0, discards the packet, and returns a Time Exceeded message. Your Mac logs this second hop.
- Subsequent Hops: This process repeats, incrementing the TTL by 1 each time, until a packet finally reaches the target destination, or the maximum number of hops (by default, 30) is reached.
By systematically forcing every intermediate router along the path to identify itself, a mac os trace route provides a clear, hop-by-hop map of the network journey.
How to Run a Trace Route on a Mac Using Terminal
For many years, older versions of OS X included a graphical tool called Network Utility, which allowed users to run pings and traceroutes with a simple point-and-click interface. However, Apple deprecated and fully removed Network Utility in macOS Big Sur.
Today, the most reliable, powerful, and built-in way to run a trace route for mac users is through the macOS Terminal application. Do not let the command-line interface intimidate you; running a basic traceroute is incredibly simple.
Step 1: Open the Terminal Application
There are several ways to open Terminal on your Mac:
- Via Spotlight: Press
Command + Spaceon your keyboard to open Spotlight search. Type "Terminal" and pressReturn. - Via Finder: Open Finder, navigate to the Applications folder, open the Utilities subfolder, and double-click on Terminal.
- Via Launchpad: Open Launchpad from your Dock, click on the "Other" folder, and select Terminal.
Step 2: Execute the Basic Traceroute Command
Once your Terminal window is open, you will see a command prompt displaying your username and computer name.
To run a standard trace route terminal mac command, type traceroute followed by a space, and then the domain name or IP address you want to test. For example, to trace the path to Google's public DNS, type the following command and press Return:
traceroute google.com
If you want to trace the route to a specific IP address instead of a domain name, you can do so directly:
traceroute 8.8.8.8
Step 3: Analyze the Active Trace
Your Mac will immediately begin sending packets and printing the results line-by-line in real-time. The utility will continue running until it reaches the destination server or hits the maximum hop limit.
If you ever need to stop a running traceroute before it finishes, press Control + C on your keyboard. This interrupt shortcut works universally in the macOS Terminal.
How to Read and Interpret Traceroute Terminal Mac Output
To the untrained eye, the output of a route trace mac command looks like a chaotic wall of numbers, abbreviations, and asterisks. However, once you break down a single line of output, it becomes highly logical.
Let us look at a typical line of output from a trace route command mac execution:
4 lag-10.ear3.newyork1.level3.net (4.68.72.13) 12.451 ms 11.890 ms 12.102 ms
Here is what each component of this line represents:
- Hop Number (4): This is the fourth router or layer-3 device your packet encountered since leaving your Mac.
- Hostname (lag-10.ear3.newyork1.level3.net): The reverse DNS name of the router. This often contains geographical clues (e.g., "newyork1") and the network provider's name (e.g., "level3.net").
- IP Address (4.68.72.13): The actual IP address of that router's incoming interface.
- Round-Trip Times (12.451 ms, 11.890 ms, 12.102 ms): By default, macOS sends three separate probe packets to each hop. These three values show how many milliseconds it took for each probe packet to travel to that router and send an ICMP response back to your Mac.
Deciphering the Dreaded Asterisks (* * *)
Sometimes, instead of hostnames, IPs, and millisecond times, you will see a line that looks like this:
8 * * *
This indicates that your Mac did not receive a response from that specific hop within the default timeout period. There are three common reasons for this:
- Firewall or Security Filtering: Many modern enterprise routers and firewalls are configured to drop diagnostic packets (UDP and ICMP) or disable the generation of ICMP Time Exceeded messages to protect themselves from discovery or DDoS attacks. This is normal. If subsequent hops (9, 10, etc.) respond successfully, the asterisks on hop 8 simply mean that specific router is configured to ignore traceroute requests.
- Network Packet Loss: If you see random asterisks mixed with high response times on subsequent hops, it indicates real network congestion and packet loss along the path.
- Complete Black Hole: If every hop after a certain point returns nothing but asterisks until the command reaches its maximum of 30 hops, your packets have hit a routing loop, a dead end, or a firewall that is blocking all outbound traffic past that point.
Advanced Traceroute Techniques on macOS
While the basic traceroute command is great for quick checks, network administrators often need more control. The macOS BSD-based traceroute tool features several advanced flags that let you customize how probes are sent.
1. Forcing ICMP Traces (The macOS vs. Windows Difference)
One of the biggest content gaps in basic network guides is failing to explain the structural difference between Windows and Mac traceroutes.
By default, Microsoft Windows (tracert) sends ICMP Echo Request packets (the same packets used for ping). In contrast, macOS (traceroute) defaults to sending UDP datagrams to high, randomized ports (usually starting at port 33434).
Because many corporate firewalls block random UDP traffic but allow ICMP traffic, your trace route in mac might fail with asterisks, while a Windows machine on the same network succeeds.
To force macOS to use ICMP Echo Requests instead of UDP, run the command with the -I flag. Because sending ICMP raw packets requires administrative privileges, you must prepend the command with sudo:
sudo traceroute -I google.com
After entering this command, Terminal will prompt you for your Mac's administrator password. Type it (no characters or asterisks will appear as you type for security) and press Return.
2. Disabling DNS Lookup for Faster Results (-n)
By default, your Mac tries to perform a reverse DNS lookup on every single hop IP address to find its hostname. While helpful, this adds significant delay to your test, especially if some DNS servers along the way are slow to respond.
To run a super-fast traceroute that only returns IP addresses without querying DNS, add the -n flag:
traceroute -n google.com
3. Adjusting the Maximum Hops (-m)
If you suspect a routing loop or are trying to map a path to an incredibly distant server, the default limit of 30 hops might not be enough. Conversely, if you only care about your local network, 30 hops might be overkill.
You can set a custom maximum hop count using the -m flag followed by the desired number:
traceroute -m 15 google.com (Stops after 15 hops)
traceroute -m 60 google.com (Allows up to 60 hops)
4. Setting the Number of Probes per Hop (-q)
If you want to speed up the execution or gather more statistically significant data, you can adjust the number of probe packets sent to each router (default is 3) using the -q flag:
traceroute -q 1 google.com (Sends only 1 probe per hop, making the trace finish three times faster)
traceroute -q 5 google.com (Sends 5 probes for more accurate latency measurements)
Modern GUI Alternatives for macOS Sequoia, Sonoma, and Big Sur
If you prefer a graphical user interface over typing commands in Terminal, or if you miss the old Apple Network Utility, you have several excellent modern options.
1. Install and Use MTR (My Traceroute) via Homebrew
For advanced users, the ultimate command-line diagnostic tool is mtr (My Traceroute). MTR combines the functionality of ping and traceroute into a single, continuously updating interface. It lets you watch packet loss and latency trends over minutes or hours.
Because MTR is not pre-installed on macOS, you can install it easily using the Homebrew package manager:
- Open Terminal.
- Install Homebrew (if you do not have it) by pasting their installation script from
brew.sh. - Run:
brew install mtr - Once installed, run MTR with administrative privileges (as it raw-probes networks):
sudo mtr google.com
This will open an interactive, live-updating table directly in your Terminal, showing packet loss percentages and average, best, and worst response times for every hop.
2. Native Graphical Network Diagnostic Tools
For an out-of-the-box GUI troubleshooting tool, macOS still includes Wireless Diagnostics. While primarily built for Wi-Fi performance, it contains hidden tools:
- Hold the
Optionkey on your keyboard and click the Wi-Fi icon in your macOS menu bar. - Click Open Wireless Diagnostics...
- Ignore the main setup assistant window. Instead, go to the top menu bar and click Window > Info or Window > Performance to see real-time signal details.
For a dedicated graphical traceroute, we recommend downloading trusted third-party applications from the Mac App Store, such as PingPlotter, NetSpot, or Network Radar. These tools visual-map your network hops, displaying geographic locations and color-coded latency spikes directly on your desktop.
Common Network Scenarios Diagnosed by Traceroute
Once you know how to run a traceroute, you can use it to diagnose several common real-world connection issues:
Scenario A: The Local Bottleneck
If hop 1 (your local router) or hop 2 (your local ISP modem gateway) displays latency spikes of over 100ms or packet loss, your local environment is the bottleneck. This points to a weak Wi-Fi signal, a bad ethernet cable, or someone on your local network saturating your bandwidth.
Scenario B: The ISP Transit Congestion
If the response times are perfectly fine (under 20ms) for hops 1 through 5, but suddenly spike to 150ms+ on hop 6 and remain high for all subsequent hops, you have isolated the exact link where congestion begins. This is usually a peering point where your ISP hands off traffic to a backbone provider. You can share this traceroute output with your ISP's technical support to prove the issue is on their network, not your device.
Scenario C: The Destination Server Drop
If your traceroute successfully makes it all the way to hop 12, but then the final hop (the target website's host) fails or drops packets, the problem lies entirely with the destination website's server hosting or firewall configuration, meaning there is nothing wrong with your local connection.
Frequently Asked Questions
Why does my traceroute on Mac show asterisks (*) on almost every hop?
This usually occurs because your Mac is sending UDP packets by default, which are heavily blocked by modern network security systems. Try running your trace route in Mac OS with the ICMP flag using sudo traceroute -I [destination]. If it still shows asterisks, it means the intermediate routers along your path are fully configured to drop diagnostic traffic to prevent scanning.
Is "traceroute" on Mac different from "tracert" on Windows?
Yes, conceptually they achieve the same goal, but they use different underlying network protocols by default. Windows tracert uses ICMP packets, while macOS traceroute uses UDP packets. Additionally, macOS is based on BSD Unix, giving its command-line version a much richer array of advanced command-line flags than the basic Windows cmd prompt alternative.
Can running a traceroute damage my Mac or my network?
Not at all. A traceroute is a completely passive diagnostic probe. It sends tiny, standard network packets that require virtually no bandwidth or system resources. It is entirely safe to run on any network.
How can I save my traceroute results to a text file to share with support?
Instead of copying and pasting from your Terminal screen, you can direct your Mac to output the results directly to a text file on your desktop. Run the command with a redirection operator (>):
traceroute google.com > ~/Desktop/traceroute-results.txt
This creates a clean text document on your desktop containing the complete output, ready to be emailed to your ISP or IT department.
Conclusion
Mastering the trace route mac os command is an essential skill for anyone looking to diagnose connectivity issues on Apple computers. By shifting away from outdated GUI tools like Network Utility and embracing the flexibility of the macOS Terminal, you gain access to raw, real-time diagnostic power.
Whether you are troubleshooting a slow remote work connection, verifying enterprise routing tables, or simply curious about how your data travels across the globe, running a traceroute gives you the transparency you need to pinpoint network problems with surgical precision.









