21th June, 2003
21th June, 2003
NAMEarping - sends arp and/or ip pings to a given host
arping [-abhpqrRd0uv] [-S host/ip] [-T host/ip] [-s MAC] [-t MAC] [-c count] [-i interface] [ -w us ] <host | -B>
The arping utility sends ARP and/or ICMP requests to the specified host and displays the replies. The host may be specified by its hostname, its IP address, or its MAC address.
One request is sent each second.
When pinging an IP an ARP who-has query is sent. When pinging a MAC
address a directed broadcast ICMP Echo request is sent. For more
technical explaination and an FAQ, see the README file.
Important note on timing
ARP packets are usually replied to (on a LAN) so fast that the OS task
scheduler can't keep up to get exact enough timing.
On an idle system the roundtrip times will be pretty much accurate, but
with more load the timing gets less exact.
To get more exact timing on a non-idle system, re-nice arping to -15 or so.
# nice -n -15 arping foobar
This is not just an issue with arping, it is with normal ping also
(at least it is on my system). But it doesn't show up as much with ping
since arping packets (when pinging IP) doesn't traverse the IP stack when
received and are therefore replied to faster.
- Use this option to ping with source IP address 0.0.0.0. Use this
when you haven't configured your interface yet.
Note that this may get the MAC-ping unanswered.
This is an alias for -S 0.0.0.0.
- Audible ping.
- Only count addresses matching requested address (This *WILL*
break most things you do. Only useful if you are arpinging many
hosts at once. See arping-scan-net.sh for an example).
- Like -0 but source broadcast source address (255.255.255.255).
Note that this may get the arping unanswered since it's not normal behavior
for a host.
- Use instead of host if you want to address 255.255.255.255.
- -c count
- Only send count requests.
- Find duplicate replies.
- Don't try to be smart about the interface name. (even if this
switch is not given, -i overrides smartness.
- Displays a help message and exits.
- -i interface
- Use the specified interface.
- Does not display messages, except error messages.
- Raw output: only the MAC/IP address is displayed for each reply.
- Raw output: Like -r but shows "the other one", can be combined with
- -s MAC
- Set source MAC address. You may need to use -p with this.
- -S IP
- Like -b and -0 but with set source address.
Note that this may get the arping unanswered if the target does not have
routing to the IP. If you don't own the IP you are using, you may need to turn
on promiscious mode on the interface (with -p). With this switch you can find
out what IP-address a host has without taking an IP-address yourself.
- -t MAC
- Set target MAC address to use when pinging IP address.
- -T IP
- Use -T as target address when pinging MACs that won't
respond to a broadcast ping but perhaps to a directed broadcast.
Example: To check the address of MAC-A, use knowledge of MAC-B and IP-B.
$ arping -S <IP-B> -s <MAC-B> -p <MAC-A>
- Turn on promiscious mode on interface, use this if you don't
"own" the MAC address you are using.
- Show index=received/sent instead of just index=received when
- Verbose output. Use twice for more messages.
- (arping 2.x only) Time to wait between pings, in microseconds.
You have to use -B instead of arpinging 255.255.255.255, and -b
instead of -S 255.255.255.255. This is libnets fault.
ping(8), arp(8), rarp(8)
Arping was written by Thomas Habets <email@example.com>.