ARP-FINGERPRINT(1)
β¨ NAME β¨
Okay bestie, welcome to the ARP-FINGERPRINT(1) page from the General Commands Manual π β this is all about arp-fingerprint, the icon that fingerprints a system using ARP. Periodt.
πΈ SYNOPSIS πΈ
arp-fingerprint [options] target
The target has to be one single IP address or hostname. Not multiple targets, not IP networks, not ranges β one target only, bestie π.
If you use an IP address for the target, you can use the -o option to pass the --numeric option to arp-scan. That prevents arp-scan from attempting DNS lookups, which can speed up the fingerprinting process β especially on systems with a slow or faulty DNS configuration. Slay for slow DNS, honestly π¦.
π DESCRIPTION π
arp-fingerprint fingerprints the specified target host using the ARP protocol β¨.
It sends various different types of ARP request to the target, and records which types it responds to. From that, it constructs a fingerprint string made of "1" where the target responded and "0" where it did not. An example of a fingerprint string is 01000100000. Then that fingerprint string is used to look up the likely target operating system π.
Many of the fingerprint strings are shared by several operating systems, so there is not always a one-to-one mapping between fingerprint strings and operating systems. Also: just because a systemβs fingerprint matches a certain operating system (or list of operating systems), that does not necessarily mean the system being fingerprinted is that operating system β although it is quite likely. Why? Because the list of operating systems is not exhaustive; it is just what I have discovered to date, and there are bound to be operating systems that are not listed. No cap π.
The ARP fingerprint of a system is generally a function of that systemβs kernel β although it is possible for the ARP function to be implemented in user space, it almost never is π§.
Sometimes an operating system can give different fingerprints depending on the configuration. An example is Linux, which will respond to a non-local source IP address if that IP is routed through the interface being tested. This is both good and bad: on one hand it makes the fingerprinting task more complex; but on the other, it can allow some aspects of the system configuration to be determined. Itβs giving βmessy but usefulβ π.
Sometimes the fact that two different operating systems share a common ARP fingerprint string points to a re-use of networking code. One example of this is Windows NT and FreeBSD π.
arp-fingerprint uses arp-scan to send the ARP requests and receive the replies. Bestie does not raw-dog the packets herself, okay? π«Ά
There are other methods that can be used to fingerprint a system using arp-scan which can be used in addition to arp-fingerprint. These additional methods are not included in arp-fingerprint either because they are likely to cause disruption to the target system, or because they require knowledge of the targetβs configuration that may not always be available. So we keep them out of the group chat π.
Most of the ARP requests that arp-fingerprint sends are non-standard, so it could disrupt systems that donβt have a robust TCP/IP stack. Thatβs a real warning, bestie β not a vibe check π.
π OPTIONS π
-hβ Display a brief usage message and exit. Short and sweet, iconic.-vβ Display verbose progress messages. Sheβs narrating the whole process π¬.-o <option-string>β Pass specified options toarp-scan. You need to enclose the options string in quotes if it contains spaces, e.g.-o "-I eth1". The commonly used options are--interface(-I) and--numeric(-N) β¨.-lβ Fingerprint all hosts on the local network. You do not need to specify any target hosts if this option is given. Local-network main character energy π.
π EXAMPLES π
$ arp-fingerprint 192.168.0.1
192.168.0.1 01000100000 Linux 2.2, 2.4, 2.6
$ arp-fingerprint -o "-N -I eth1" 192.168.0.202
192.168.0.202 11110100000 FreeBSD 5.3, Win98, WinME, NT4, 2000, XP, 2003
π¦ NOTES π¦
arp-fingerprint is implemented in Perl, so you need to have the Perl interpreter installed on your system to use it. Perl girlies rise πͺπ.
β SEE ALSO β
arp-scan(1)http://www.royhills.co.uk/wiki/β thearp-scanwiki page π
Thatβs the whole page, bestie β ARP-FINGERPRINT(1) from the General Commands Manual, dated October 27, 2022. Mwah ππ
π¦ where this page comes from
- alpine 3.24: arp-scan-doc 1.10.0-r2 Β· GPL-3.0-or-later
- arch rolling: arp-scan 1.10.0-5 Β· GPL-3.0-or-later
- epel 10: arp-scan 1.10.0-11.el10_3 Β· GPL-2.0-or-later
- epel 9: arp-scan 1.10.0-1.el9 Β· GPLv2+
- fedora 43: arp-scan 1.10.0-8.fc43 Β· GPL-2.0-or-later
- fedora 44: arp-scan 1.10.0-10.fc44 Β· GPL-2.0-or-later
- nixos 26.05: arp-scan 1.10.0
- nixpkgs unstable: arp-scan 1.10.0
- opensuse-leap 16.0: arp-scan 1.10.0-bp160.2.1 Β· GPL-3.0-only AND LGPL-2.1-only AND ISC
- opensuse-leap 16.0: arp-scan 1.10.0-bp160.2.1 Β· GPL-3.0-only AND LGPL-2.1-only AND ISC
- opensuse-leap 16.0: arp-scan 1.10.0-bp160.2.1 Β· GPL-3.0-only AND LGPL-2.1-only AND ISC
- opensuse-leap 16.0: arp-scan 1.10.0-bp160.2.1 Β· GPL-3.0-only AND LGPL-2.1-only AND ISC
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms