When your Mac connects to a local network, it needs to map IP addresses (like 192.168.1.10) to physical hardware MAC addresses (like 00:1A:2B:3C:4D:5E) so data packets reach the correct device. It stores these mappings in a temporary database known as the ARP (Address Resolution Protocol) cache.
Under normal circumstances, the ARP cache works silently in the background, speeding up network communication. However, if a device on your network changes its IP address, or if a router is replaced, your Mac’s ARP cache might retain the old, outdated mapping. This results in incredibly frustrating network issues: you might be unable to connect to a specific local server, experience intermittent dropouts, or receive “Host is down” errors even when the device is clearly online.
To resolve these specific local routing issues, you need to manually clear (or “flush”) the ARP cache, forcing macOS to rebuild the mapping from scratch.
How to View the Current ARP Cache
Before blindly deleting the cache, it is often helpful to view its current contents to verify if an incorrect mapping exists. You must do this via the Terminal application.
- Press Command + Space to open Spotlight Search.
- Type Terminal and press Return to open the application.
- Type the following command and press Return:
arp -a
The terminal will output a list of all current IP-to-MAC address mappings known to your Mac. The output will look similar to this:
? (192.168.1.1) at 1a:2b:3c:4d:5e:6f on en0 ifscope [ethernet]
? (192.168.1.50) at 99:88:77:66:55:44 on en0 ifscope [ethernet]
If you see an IP address pointing to the wrong MAC address, or if an IP address you are trying to reach is completely missing, flushing the cache is the correct troubleshooting step.
How to Flush the Entire ARP Cache
Flushing the ARP cache requires administrative privileges, meaning you must use the sudo command and enter your Mac’s administrator password.
- In the Terminal window, type the following command and press Return:
sudo arp -a -d - The terminal will prompt you for your password. Type your Mac login password (the characters will not appear on screen for security reasons) and press Return.
This command instructs the system to view all entries (-a) and delete them (-d). If successful, the terminal will rapidly print out the IP addresses as it deletes them from the cache.
How to Delete a Single ARP Entry
If you are managing a complex network and only want to delete a single, problematic IP mapping without disrupting other active connections, you can target a specific IP address.
Use the following command, replacing the IP address with the one you wish to remove:
sudo arp -d 192.168.1.50
This will surgically remove only the 192.168.1.50 entry. The next time your Mac attempts to communicate with that IP, it will broadcast a new ARP request to the network to find the correct, updated MAC address.
What Happens After Flushing the Cache?
You do not need to restart your Mac or your network adapters after flushing the ARP cache. The cache rebuilds itself dynamically in milliseconds. As soon as an application on your Mac tries to communicate with a local device, macOS will send an ARP broadcast, receive the new hardware address, and store the fresh mapping.
If flushing the ARP cache does not resolve your local network connectivity issue, the problem likely resides with your router’s DHCP assignment, a subnet mismatch, or a physical hardware fault with the switch or cable.