PAGES
← all tools
◆ Reconnaissance & OSINT

arp-scan

2023-01-28 Roy Hills <royhills@hotmail.com> open-source

Network scanning tool that uses the ARP protocol to discover and fingerprint IPv4 hosts on the local network.

Summary

arp-scan is an open-source command-line tool that sends ARP requests to discover and fingerprint IPv4 hosts on the local network, and it is free to use under the GPLv3 licence. It runs from source on Linux, BSD, macOS and Solaris, working directly at layer 2 rather than relying on IP-level probes that routers or firewalls can drop, which makes it useful to people doing network reconnaissance or asset discovery on a segment they have physical or switched access to. Started in 2006 and carried by 16 contributors, the project has seen no commits in the past year, so treat it as stable rather than actively evolving.

Network scanning tool that uses the ARP protocol to discover and fingerprint IPv4 hosts on the local network.

How arp-scan helps

Which devices are actually plugged into or associated with this network segment right now?

sends ARP requests to the local address range and lists every IP that answers back with its hardware address, catching hosts that never respond to a ping or a routed probe

Is there a machine on this segment using an IP that shouldn't be here, or spoofing one that's already assigned?

matches the returned hardware address against the IP that answered, exposing duplicate or conflicting claims that a normal IP scan would never surface

What vendor or hardware is behind an IP address I only know from a log or a DHCP lease?

reads the vendor block encoded in the hardware address of each reply and reports the manufacturer alongside the IP

Can a host on this switch be found even though its firewall drops every IP-layer probe I send it?

works at layer 2, so a host that filters ping and port scans still has to answer the ARP request to communicate on the segment at all

Which hosts on this segment am I missing because my last scan only checked a handful of addresses?

takes a full address range for the local network and queries every one of them, rather than relying on a host list assembled from other sources

all 10 features, with the evidence for each →

Languages

Not documented

Features

10 capabilities across 3 capability groups · 1 backed by code, an API document or a real run

Built from arp-scan's releases, docs, README and our own runs. “Seen” marks the month we first spotted a release the vendor didn't date. Group names and tags are our labels.

Compare with peers →

  • arp-scan covers 3 of the 13 network discovery and scanning capabilities we track.

What arp-scan offers you

  • Command-line interface5
Network host discovery 1 feature Network discovery and scanning since 2007
ARP host discovery verified Performs ARP scans on a network interface to discover live hosts. 5 releases · 5 other sources · first seen Dec 2007

Shared capability: Network host discovery

Also counts toward: Command-line interface

release

  • Adds --format option to specify flexible output format for scan results 1.10.0 · Dec 2022 · source · release history
  • Adds the --limit (-M) option to exit after a specified number of target hosts respond 2022-09-28 Roy Hills <royhills@hotmail.com> · Sep 2022 · source · release history
  • Adds --plain (-x) option to supress printing of header and footer text in arp-scan output 2013-11-02 Roy Hills <Roy.Hills@nta-monitor.com> · Nov 2013 · source · release history
  • arp-scan now falls back to pcap_lookupdev() to pick an interface when --interface is not provided, removing the previous dependency on the RMIF environment variable. 2008-07-11 Roy Hills <Roy.Hills@nta-monitor.com> · Jul 2008 · source · release history
  • Improves argument parsing for flags like --snap by rejecting non-numeric values 2007-12-10 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2007 · source · release history

we ran it

  • Printed a pcap error: the tarball path is not a network device, so packet capture could not be activated. No ARP scan was performed and no hosts were discovered. Aug 2026 · the full run

example

  • Scan the local network using capabilities instead of SUID root permissions sudo setcap cap_net_raw+p arp-scan && ./arp-scan --interface=eth0 <target> 1.10.0 · Dec 2022 · source
  • Produce clean, one-line-per-host output for easier scripting or parsing. arp-scan --localnet -x 2013-11-02 Roy Hills <Roy.Hills@nta-monitor.com> · Nov 2013 · source
  • Capture raw ARP traffic for offline analysis with a packet analyzer arp-scan --interface=eth0 --pcapsavefile=/tmp/arp_traffic.pcap 192.168.1.0/24 2008-05-03 Roy Hills <Roy.Hills@nta-monitor.com> · May 2008 · source
  • Send ARP requests on a specific VLAN to discover devices isolated in that network segment. arp-scan --vlan=100 192.168.1.0/24 2007-12-10 Roy Hills <Roy.Hills@nta-monitor.com> · Dec 2007 · source
Operating-system fingerprinting 1 feature Network discovery and scanning since 2013
OS and device fingerprinting shipped Identifies the operating system or device type of discovered hosts by matching ARP response patterns against a built-in database. 6 releases · 2 other sources · first seen Nov 2013

Shared capability: Operating-system fingerprinting

release

  • Adds --retry-send flag (default 3) to specify the number of retries when ARP packet send fails with EAGAIN 2021-09-09 Roy Hills <royhills@hotmail.com> · Sep 2021 · source · release history
  • Adds --retry-send-interval flag (default 10ms) to set the delay between retries 2021-09-09 Roy Hills <royhills@hotmail.com> · Sep 2021 · source · release history
  • Adds fingerprint patterns for FreeBSD 10.3, DragonflyBSD 4.6, Windows10, Linux 4.0, Linux 4.6, OpenBSD 5.9, and NetBSD 7.0. 10.3 · Aug 2016 · source · release history
  • Added new arp-fingerprint patterns for GNU/Hurd, Amazon Kindle (Linux 2.6), BeOS, Windows 8, Recent Linux, FreeBSD, NetBSD, OpenBSD and RiscOS 1.9 · Nov 2013 · source · release history
  • Adds new arp-fingerprint patterns for Cisco 79xx IP Phone SIP versions 5.x, 6.x, 7.x, and 8.x 1.7 · Nov 2013 · source · release history
  • New arp-fingerprint patterns for IOS 11.2, 11.3, and 12.4; ScreenOS 5.1-5.4; Cisco VPN Concentrator 4.7; AIX 4.3 and 5.3; Nortel Contivity 6.00 and 6.05; Cisco PIX 5.1 through 7.0 1.6 · Nov 2013 · source · release history

example

  • Capture both device fingerprint and MAC address in a single arp-fingerprint run. arp-fingerprint -m <target_ip> 2023-01-07 Roy Hills <royhills@hotmail.com> · Jan 2023 · source
  • Increase retry attempts and interval when scanning high-density networks to prevent scan failure due to temporary resource starvation. arp-scan --retry-send=10 --retry-send-interval=50ms 192.168.1.0/24 2021-09-09 Roy Hills <royhills@hotmail.com> · Sep 2021 · source
Attack surface inventory 1 feature Network discovery and scanning since 2013
Local network discovery shipped Automatically identifies the network range of a specified interface and scans all IP addresses within that subnet. 1 release · first seen Nov 2013

Shared capability: Attack surface inventory

Also counts toward: Command-line interface

release

  • Adds --localnet option to scan all IP addresses on the specified interface network and mask. 1.4 · Nov 2013 · source · release history
Other / not yet classified 7 features Features we have not matched to a capability yet. A suggested match is marked.
Custom vendor mapping shipped Allows users to specify custom files for MAC address vendor identification. 4 releases · 3 other sources · first seen Nov 2013

release

  • arp-fingerprint now supports the -m option to include the target's MAC address in its output 2023-01-07 Roy Hills <royhills@hotmail.com> · Jan 2023 · source · release history
  • get-oui now fetches registry data from all four IEEE registries (MA-L, MA-M, MA-S and IAB), formats it appropriately for arp-scan, and concatenates the result into the ieee-oui file. 2022-10-31 Roy Hills <royhills@hotmail.com> · Oct 2022 · source · release history
  • Adds --iabfile option to specify a custom IEEE IAB listing file, controlled by the new get-iab update script. 1.4 · Nov 2013 · source · release history
  • Adds --macfile option to specify a manual MAC/Vendor mapping file (e.g. mac-vendor.txt). 1.4 · Nov 2013 · source · release history

example

  • Identify only major vendors like Apple or Microsoft to quickly filter for specific device classes on a local network. arp-fingerprint -l 192.168.1.0/24 10.3 · Aug 2016 · source
  • Scan the entire local subnet using a manually maintained vendor mapping file for custom entries. arp-scan --localnet --macfile /path/to/custom-mac-vendor.txt 1.4 · Nov 2013 · source
  • Use a specific IEEE IAB database file for vendor identification. arp-scan --iabfile /path/to/iab-listings.txt <interface> 1.4 · Nov 2013 · source
Network platform support shipped Enables the tool to compile and run on various operating systems and architectures beyond its original scope. 6 releases · first seen Nov 2013

release

  • Introduces limit_capabilities(), set_capability(), and drop_capabilities() functions to control Linux capabilities 1.9.9 · Oct 2022 · source · release history
  • Adds native POSIX.1e capabilities support for improved privilege management 1.9.9 · Oct 2022 · source · release history
  • Adds support for FreeBSD, OpenBSD, NetBSD and MacOS X (Darwin) 1.5 · Nov 2013 · source · release history
  • Enables compilation on Apple Mac OS X with Xcode 2.5+ 1.8 · Nov 2013 · source · release history
  • Added support for ARM 64-bit CPUs via autoconf 2.69 and automake 1.11 1.9 · Nov 2013 · source · release history
  • Adds Sun Solaris support (tested on Solaris 9 SPARC), extending the operational surface of DLPI-based systems 1.6 · Nov 2013 · source · release history
Packet capture export shipped Saves received ARP responses to a pcap file for offline analysis. 4 releases · first seen May 2008

Also counts toward: Command-line interface

release

  • Adds BlackBerry OS fingerprint to arp-fingerprint database 2011-02-21 Roy Hills <Roy.Hills@nta-monitor.com> · Feb 2011 · source · release history
  • --readpktfromfile now reads from a pcap savefile rather than from a raw file. 2011-02-02 Roy Hills <Roy.Hills@nta-monitor.com> · Feb 2011 · source · release history
  • arp-fingerprint added fingerprint for Windows 7 2011-01-31 Roy Hills <Roy.Hills@nta-monitor.com> · Jan 2011 · source · release history
  • Adds --pcapsavefile (-W) option to save received ARP responses in a specified pcap file for later analysis 2008-05-03 Roy Hills <Roy.Hills@nta-monitor.com> · May 2008 · source · release history
Round-trip time measurement shipped suggested Calculates and displays the latency (round-trip time) for each ARP response. 1 release · 2 other sources · first seen Nov 2013

Suggested capability: Network host discovery. This is our guess, not confirmed.

Also counts toward: Command-line interface

release

  • Adds --rtt (alias -D) option to display packet round-trip time in scan results 1.9 · Nov 2013 · source · release history

example

  • Scan a specific interface and display round-trip times, using the new default 500ms timeout for better reliability on slower links. arp-scan -I eth0 --rtt 1.9 · Nov 2013 · source
  • Scan a local subnet and display the round-trip time for each ARP reply to measure network latency. arp-scan --localnet --rtt 1.9 · Nov 2013 · source
Hostname resolution shipped suggested Resolves IP addresses to hostnames for discovered hosts using DNS or reverse lookup. 1 release · 1 other source · first seen Oct 2022

Suggested capability: Network host discovery. This is our guess, not confirmed.

release

  • Adds --resolve (-d) flag to arp-scan to resolve and display hostnames for responding hosts 2022-10-07 Roy Hills <royhills@hotmail.com> · Oct 2022 · source · release history

example

  • Scan a local subnet and output DNS names instead of raw IPs for easier identification of devices. arp-scan --interface=eth0 --localnet --resolve 2022-10-07 Roy Hills <royhills@hotmail.com> · Oct 2022 · source
Advanced packet format handling shipped Supports processing of specific ARP packet variations, including VLAN tags and trailer replies. 2 releases · first seen Nov 2013

release

  • Adds support for ARP packets with both 802.1Q VLAN tag and LLC/SNAP framing 1.8 · Nov 2013 · source · release history
  • Adds support for trailer ARP replies (early BSD Unix VAX format) 1.8 · Nov 2013 · source · release history
LLC/SNAP framing support shipped suggested Sends ARP requests using LLC/SNAP framing to interact with legacy devices or specific network configurations that require non-standard Ethernet-II frames. 1 release · 1 other source · first seen Nov 2013

Suggested capability: Network host discovery. This is our guess, not confirmed.

Also counts toward: Command-line interface

release

  • Adds --llc (-L) flag to send outgoing ARP requests using RFC 1042 LLC/SNAP framing instead of default Ethernet-II 1.7 · Nov 2013 · source · release history

example

  • Identify Cisco IP phones by triggering LLC/SNAP framing in ARP requests, which some legacy devices respond to differently. arp-scan --interface=eth0 --llc 192.168.1.0/24 1.7 · Nov 2013 · source

Lines in monospace are the tool's own words: help text parsed from its source, or an endpoint from its API document. Under release, a line is our summary of a dated release. Under docs, it is quoted from the tool's own documentation or website. Each links back to the source it came from.

Score card

  1. Shipping velocity releases a month, last 12 months
  2. Documentation quality release-notes rubric, 0–100
  3. Breaking-change discipline how rarely a release breaks users, and notice given
  4. Maintenance risk quiet time against its own cadence, maintainers
  5. Innovation & surface new capabilities, API and MCP surface
  6. Community health
  7. Contributor trend distinct committers, this year against last
  8. Maintainer concentration bus factor now against a year ago
  9. Issue backlog trend issues closed per issue opened, 12 months
  10. Responsiveness median time to a maintainer’s first reply

Nine scores for arp-scan, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.

Score cards are part of every paid plan.

See plans →

Each score is 0–100 on a published rubric, derived from data this site already shows. A dimension we cannot measure says so — it is never scored 0 and never enters a rank.

How this is scored
  • Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
  • Documentation quality — the release-notes rubric published on the analytics page, unchanged.
  • Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
  • Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
  • Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
  • Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
  • Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
  • Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.

Release-note detail over time

See how much detail arp-scan puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.

Checking release-note history…

Explore the full chart →

Releases

Show

25 entries

  1. January 20232
  2. December 20221
  3. October 20223
  4. September 20221
  5. September 20211
  6. August 20161
  7. November 20137
  8. December 20111
  9. February 20114
  10. January 20111
  11. July 20081
  12. May 20081
  13. December 20071
    Show

    25 entries

    Project health

    Issue, contributor and maintainer activity in royhills/arp-scan, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.

    1. Contributors 0 −1 vs prior 12 months
    2. Maintainers 0 +0 joined · −1 left, last 12 months
    3. Bus factor 0 committers behind half the commits
    4. Community-filed 100% of issues opened, last 12 months
    5. Median time to close < 1 day first maintainer reply 14 hours
    6. Open backlog 27 of 100 issues ever filed
    1. Issues opened / month 0 · 0 communitymaintainers
    2. Open backlog 27
    3. Contributors / month 0
    4. Commits / month 0
    5. Stars 1,296
    Issue themes, last 12 months
    • other 100%

    Counts from the project's public repository and git history; no individuals are identified. Maintainers are the committers covering 80% of the last year's commits. how we measure this

    Libraries its release ships

    What its latest release locks, checked against known advisories.

    None of its release's images build from a lockfile we can read.

    Add the badge to your README

    Maintain this project? The badge links readers straight to this page, so they can follow every release here.

    Tracked by Cyber Toolchain Choose a badge style and copy the code →
    browse all tools → score card for your toolchain →