Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
ARP(4)			    Kernel Interfaces Manual			ARP(4)

NAME
       arp -- Address Resolution Protocol

SYNOPSIS
       device ether

DESCRIPTION
       The  Address  Resolution	 Protocol (ARP)	is used	to dynamically map be-
       tween Protocol Addresses	(such as IP addresses) and Local  Network  Ad-
       dresses	(such as Ethernet addresses).  This implementation maps	IP ad-
       dresses to Ethernet, ARCnet, or Token Ring addresses.  It  is  used  by
       all the Ethernet	interface drivers.

       ARP  caches  Internet-Ethernet address mappings.	 When an interface re-
       quests a	mapping	for an address not in the cache, ARP queues  the  mes-
       sage which requires the mapping and broadcasts a	message	on the associ-
       ated  network  requesting  the  address mapping.	 If a response is pro-
       vided, the new mapping is cached	and any	pending	message	 is  transmit-
       ted.  ARP will queue at most one	packet while waiting for a response to
       a  mapping  request;  only  the most recently ``transmitted'' packet is
       kept.  If the target host does not respond after	several	requests,  the
       host  is	 considered  to	 be  down  allowing an error to	be returned to
       transmission attempts.  Further demand for this mapping causes ARP  re-
       quest  retransmissions,	that are ratelimited to	one packet per second.
       The error is EHOSTDOWN  for  a  non-responding  destination  host,  and
       EHOSTUNREACH for	a non-responding router.

       The ARP cache is	stored in the system routing table as dynamically-cre-
       ated host routes.  The route to a directly-attached Ethernet network is
       installed  as  a	 "cloning"  route (one with the	RTF_CLONING flag set),
       causing routes to individual hosts on that network to be	created	on de-
       mand.  These routes time	out periodically (normally  20	minutes	 after
       validated; entries are not validated when not in	use).

       ARP  entries  may be added, deleted or changed with the arp(8) utility.
       Manually-added entries may  be  temporary  or  permanent,  and  may  be
       "published",  in	which case the system will respond to ARP requests for
       that host as if it were the target of the request.

       In the past, ARP	was used to negotiate the use of a trailer  encapsula-
       tion.  This is no longer	supported.

       ARP  watches  passively for hosts impersonating the local host (i.e., a
       host which responds to an ARP mapping request for the local host's  ad-
       dress).

       Proxy  ARP is a feature whereby the local host will respond to requests
       for addresses other than	itself,	with its own address.  Normally, proxy
       ARP in FreeBSD is set up	on a host-by-host basis	using the arp(8) util-
       ity, by adding an entry for each	host inside a given subnet  for	 which
       proxying	 of ARP	requests is desired.  However, the "proxy all" feature
       causes the local	host to	act as a proxy for all hosts reachable through
       some other network interface, different from the	one the	 request  came
       in  from.   It  may  be	enabled	 by setting the	sysctl(8) MIB variable
       net.link.ether.inet.proxyall to 1.

MIB Variables
       The ARP protocol	implements  a  number  of  configurable	 variables  in
       net.link.ether.inet branch of the sysctl(3) MIB.

       allow_multicast		 Should	 the  kernel  install ARP entries with
				 multicast bit set in  the  hardware  address.
				 Installing  such  entries  is RFC 1812	viola-
				 tion,	but  some  prorietary  load  balancing
				 techniques  require  routers on network to do
				 so.  Turned off by default.

       log_arp_movements	 Should	the kernel log	movements  of  IP  ad-
				 dresses  from	one  hardware  address	to  an
				 other.	 See "DIAGNOSTICS" below.   Turned  on
				 by default.

       log_arp_permanent_modify	 Should	the kernel log attempts	of remote host
				 on  network  to modify	a permanent ARP	entry.
				 See "DIAGNOSTICS" below.  Turned  on  by  de-
				 fault.

       log_arp_wrong_iface	 Should	 the  kernel log attempts to insert an
				 ARP entry on an interface when	the IP network
				 the address belongs to	 is  connected	to  an
				 other	interface.   See  "DIAGNOSTICS"	below.
				 Turned	on by default.

       max_log_per_second	 Limit number of  remotely  triggered  logging
				 events	to a configured	value per second.  De-
				 fault is 1 log	message	per second.

       max_age			 How  long  an	ARP entry is held in the cache
				 until it needs	to be refreshed.   Default  is
				 1200 seconds.

       maxhold			 How many packets hold in the per-entry	output
				 queue while the entry is being	resolved.  De-
				 fault is one packet.

       maxtries			 Number	 of retransmits	before host is consid-
				 ered down and error is	returned.  Default  is
				 5 tries.

       proxyall			 Enables  ARP  proxying	 for all hosts on net.
				 Turned	off by default.

       useloopback		 If an ARP entry is added for  local  address,
				 force	the traffic to go through the loopback
				 interface.  Turned on by default.

       wait			 Lifetime of an	incomplete ARP entry.  Default
				 is 20 seconds.

DIAGNOSTICS
       arp: %x:%x:%x:%x:%x:%x is using my IP address %d.%d.%d.%d on %s!	   ARP
       has discovered another host on the local	network	which responds to map-
       ping  requests  for  its	own Internet address with a different Ethernet
       address,	generally indicating that two hosts are	attempting to use  the
       same Internet address.

       arp:  link  address  is	broadcast for IP address %d.%d.%d.%d!  ARP re-
       quested information for a host, and received an answer indicating  that
       the  host's  ethernet  address is the ethernet broadcast	address.  This
       indicates a misconfigured or broken device.

       arp: %d.%d.%d.%d	moved from %x:%x:%x:%x:%x:%x to	 %x:%x:%x:%x:%x:%x  on
       %s    ARP had a cached value for	the ethernet address of	the referenced
       host, but received a reply indicating that the host is  at  a  new  ad-
       dress.	This  can happen normally when host hardware addresses change,
       or when a mobile	node arrives or	leaves the local subnet.  It can  also
       indicate	 a problem with	proxy ARP.  This message can only be issued if
       the sysctl net.link.ether.inet.log_arp_movements	is set to 1, which  is
       the system's default behaviour.

       arpresolve:  can't  allocate  llinfo for	%d.%d.%d.%d  The route for the
       referenced host points to a device upon which ARP is required, but  ARP
       was  unable  to	allocate  a  routing table entry in which to store the
       host's MAC address.  This usually points	to a misconfigured routing ta-
       ble.  It	can also occur if the kernel cannot allocate memory.

       arp: %d.%d.%d.%d	is on if0 but got reply	from %x:%x:%x:%x:%x:%x on if1
       Physical	connections exist to the same logical IP network on  both  if0
       and if1.	 It can	also occur if an entry already exists in the ARP cache
       for the IP address above, and the cable has been	disconnected from if0,
       then reconnected	to if1.	 This message can only be issued if the	sysctl
       net.link.ether.inet.log_arp_wrong_iface	is set to 1, which is the sys-
       tem's default behaviour.

       arp:  %x:%x:%x:%x:%x:%x	attempts  to  modify   permanent   entry   for
       %d.%d.%d.%d on %s  ARP has received an ARP reply	that attempts to over-
       write  a	 permanent entry in the	local ARP table.  This error will only
       be logged if the	sysctl net.link.ether.inet.log_arp_permanent_modify is
       set to 1, which is the system's default behaviour.

       arp: %x:%x:%x:%x:%x:%x is multicast  Kernel refused to install an entry
       with multicast hardware address.	 If you	really want such addresses be-
       ing installed, set the sysctl net.link.ether.inet.allow_multicast to  a
       positive	value.

SEE ALSO
       inet(4),	route(4), arp(8), ifconfig(8), route(8), sysctl(8)

       Plummer,	D., "RFC826", An Ethernet Address Resolution Protocol.

       Leffler,	S.J.  and Karels, M.J.,	"RFC893", Trailer Encapsulations.

GNU				 May 11, 2013				ARP(4)

NAME | SYNOPSIS | DESCRIPTION | MIB Variables | DIAGNOSTICS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=arp&sektion=4&manpath=FreeBSD+10.3-RELEASE>

home | help