ARP Ping 2.25

Arping is a util to find out if a specific IP address on the LAN is 'taken' and what MAC address owns it. Sure, you *could* just use 'ping' to find out if it's taken and even if the computer blocks ping (and everything else) you still get an entry in your ARP cache. But what if you aren't on a routable net? Or the host blocks ping (all ICMP even)? Then you're screwed. Or you use arping. Why it's not stupid: Say you have a block of N real IANA-assigned IP-addresses. You want to debug the net and you don't know which IP addresses are taken. You can't ping anyone before you take the IP, and you can't pick an IP before you know which are already taken. Catch 22. But with arping you can 'ping' the IP and if you get no response, the IP is available. Example uses: If some box is dumping non-IP (like IPX) garbage and you don't know which box it is, you can ping by MAC to get the IP and fix the problem. If you are on someone else's net and want to 'borrow' a real IP address instead of using one of those 10.x.x.x-addresses the DHCP hands out you probably want to know which ones are taken, or people will get mad (a friend of mine got a call on his cellphone about 15 seconds after he accidentally 'stole' an IP, oops).

Tags network arp ping c shell python
License GNU GPLv3
State stable

Recent Releases

2.2508 Jan 2025 15:23 minor feature: seccomp (default disabled): Allow some more syscalls seccomp (default disabled): Move some checks from build time to runtime Sane output and exit code when sending ARP replies Work around libpcap when linking with musl