The ARP scanner
arp-scan uses the standard GNU automake and autoconf tools, so the typical installation process is:
- Run
git clone https://github.com/royhills/arp-scan.git
to obtain the latest project source code - Run
cd arp-scan
to enter the source directory - Run
autoreconf --install
to generate a viable ./configure file - Run
./configure
to generate a makefile for your system - Run
make
to build the project - Optionally run
make check
to verify that everything works as expected - Run
make install
to install (you'll need to be root or use sudo/doas for this part)
You will need GNU automake and autoconf, the make utility, an ANSI C compiler (for example gcc or clang), the development header files and libraries, and libpcap version 1.5 or later.
If you want to run the Perl scripts arp-fingerprint, get-oui and get-iab, you will need to have the Perl interpreter installed. In addition, for get-oui and get-iab, you will need the LWP::UserAgent Perl module.
You can pass various options to "configure" to control the build and installation process. See the file INSTALL for more details.
arp-scan is known to compile and run on the following platforms:
- Linux
- FreeBSD
- OpenBSD
- NetBSD
- DragonflyBSD
- MacOS X
- Solaris 10 (there are known problems with Solaris 11)
All platforms use libpcap (https://www.tcpdump.org/) to send the ARP packets and receive the responses.
The only piece of the code that is implementation-specific is the function to obtain the interface MAC address. This uses Packet Socket on Linux, BPF on BSD and DLPI on Solaris.
The primary source of documentation is the arp-scan wiki at https://www.royhills.co.uk/wiki/
For usage information, including details of all the options, use:
arp-scan --help
For more detailed documentation, see the manual pages: arp-scan(1), arp-fingerprint(1), get-iab(1), get-oui(1) and mac-vendor(5).