ARP(8)

NAME
arp - address resolution display and control

SYNOPSIS
arp [-adn] [-V rdomain] hostname
arp [-F] [-f file] [-V rdomain] -s hostname ether_addr [temp | permanent] [pub]
arp -W ether_addr [iface]

DESCRIPTION
The arp program displays and modifies the Internet-to-Ethernet address translation tables used by the address resolution protocol (ARP).

arp displays the current ARP entry for hostname when no optional parameters are supplied. hostname may be specified by name or by number, using Internet dot notation.

arp can also be used to send Wake on LAN (WoL) frames over a local Ethernet network to one or more hosts using their link layer (hardware) addresses. WoL functionality is generally enabled in a machine's BIOS and can be used to power on machines from a remote system without having physical access to them.

The options are as follows:

-a  Display all of the current ARP entries. See also the -d option below.

-d  Delete an entry for the host called hostname. Alternatively, the -d flag may be combined with the -a flag to delete all entries, with hostname lookups automatically disabled. Only the superuser may delete entries.

-F  Force existing entries for the given host to be overwritten (only relevant to the -f and -s options).

-f file
    Process entries from file to be set in the ARP tables. Any entries in the file that already exist for a given host will not be overwritten unless -F is given. Entries in the file should be of the form:

    hostname ether_addr [temp | permanent] [pub]

    The entry will be static (will not time out) unless the word temp is given in the command. A static ARP entry can be overwritten by network traffic, unless the word permanent is given. If the word pub is given, the entry will be “published”; that is, this system will act as an ARP server, responding to requests for hostname even though the host address is not its own. This behavior has traditionally been called proxy ARP.

-n  Show network addresses as numbers (normally arp attempts to display addresses symbolically).

    -s hostname ether_addr [temp | permanent] [pub] Create an ARP entry for the host called hostname with the Ethernet address ether_addr. The Ethernet address is given as six hexadecimal bytes separated by colons.

    The permanent, pub, or temp modifiers may be specified with meanings as given above.

    If the entry already exists for the given host, it will not be replaced unless -F is given.

-V rdomain
    Select the routing domain. The default is 0.

-W ether_addr [iface]
    Send the Wake on LAN frame from all interfaces on the local machine that are up, if iface has not been specified. Otherwise the frame will be sent from iface. ether_addr is the Ethernet address of the remote machine or a hostname entry in /etc/ethers. This option cannot be used in combination with any other option.

FILES
/etc/ethers
    Ethernet host name database.

EXAMPLES
View the current arp(4) table, showing network addresses symbolically:

    $ arp -a

Create a permanent entry (one that cannot be overwritten by other network traffic):

    # arp -s 10.0.0.2 00:90:27:bb:cc:dd permanent

Create proxy ARP entries on interface fxp0 (MAC address 00:90:27:bb:cc:dd), for IP addresses 204.1.2.3 and 204.1.2.4:

    # arp -s 204.1.2.3 00:90:27:bb:cc:dd pub
    # arp -s 204.1.2.4 00:90:27:bb:cc:dd pub

SEE ALSO
inet(3), arp(4), ethers(5), ifconfig(8), ndp(8)

HISTORY
The arp command appeared in 4.3BSD. Wake on LAN functionality was added in OpenBSD 4.9.