TL;DR
ARP poisoning attacks disrupt network communication by sending fake messages that link incorrect MAC addresses to IP addresses. This guide shows you how to detect and prevent these attacks using static ARP entries, port security, and monitoring tools.
What is ARP Poisoning?
ARP (Address Resolution Protocol) translates IP addresses into MAC addresses so devices on your network can talk to each other. ARP poisoning tricks devices by sending false ARP messages, causing them to send data to the wrong place – usually the attacker’s machine. This lets the attacker intercept sensitive information.
How to Detect ARP Poisoning
- Check Your ARP Cache: Use your computer’s command line to view the current ARP table.
- Windows:
arp -a - Linux/macOS:
arp -n
Look for multiple MAC addresses associated with the same IP address. This is a strong indicator of an attack.
- Windows:
- Network Monitoring Tools: Use tools like Wireshark or tcpdump to capture network traffic and analyse ARP packets. Look for suspicious patterns, such as gratuitous ARP replies (ARP responses sent without a request).
- Wireshark Filter: Use the filter ‘arp’ to focus on ARP traffic.
How to Prevent ARP Poisoning
- Static ARP Entries: Manually define the IP-to-MAC address mappings for critical devices. This prevents attackers from spoofing these entries.
- Windows:
arp -s <IP Address> <MAC Address>(e.g.,
arp -s 192.168.1.1 AA:BB:CC:DD:EE:FF) - Linux/macOS: Edit the /etc/arp file (requires root privileges). Add a line like this:
<IP Address> <MAC Address> permanent(e.g.,
192.168.1.1 AA:BB:CC:DD:EE:FF permanent)
Important: Ensure you have the correct MAC addresses before adding static entries! Incorrect entries will break connectivity.
- Windows:
- Port Security (Switches): Enable port security on your network switches. This limits which MAC addresses can connect to each port, preventing unauthorized devices from joining the network.
- Configure switches to only allow known MAC addresses on each port. The exact configuration varies depending on switch manufacturer (Cisco, HP, etc.). Consult your switch documentation.
- Set ports to ‘shutdown’ if an unknown MAC address is detected.
- DHCP Snooping: If your switches support it, enable DHCP snooping. This prevents rogue DHCP servers from distributing incorrect IP addresses and gateway information.
- Use a Firewall: A firewall can help block malicious ARP traffic based on predefined rules.
- Regularly Update Firmware: Keep your network devices (switches, routers) updated with the latest firmware to patch security vulnerabilities.
Further Steps
- Consider using a cyber security solution that includes ARP inspection features.
- Educate users about phishing attacks and social engineering techniques, as these can be used to gather information for ARP poisoning attacks.

