- Preface
- New and Changed Feature Information in Cisco IOS XR Release 5.1.x
- Implementing Access Lists and Prefix Lists
- Configuring ARP
- Implementing Cisco Express Forwarding
- Implementing the Dynamic Host Configuration Protocol
- Implementing Host Services and Applications
- Implementing HSRP
- Implementing LPTS
- Implementing Network Stack IPv4 and IPv6
- Configuring Transports
- Implementing VRRP
- Implementing Video Monitoring
- Index
Configuring ARP
Address resolution is the process of mapping network addresses to Media Access Control (MAC) addresses. This process is accomplished using the Address Resolution Protocol (ARP). This module describes how to configure ARP processes on the Cisco ASR 9000 Series Aggregation Services Router.
![]() Note | For a complete description of the ARP commands listed in this module, refer to the Cisco ASR 9000 Series Aggregation Services Router IP Addresses and Services Command ReferenceTo locate documentation of other commands that appear in this module, use the command reference master index, or search online. |
Feature History for Configuring ARP
|
Release |
Modification |
|---|---|
|
Release 3.7.2 |
This feature was introduced. |
- Prerequisites for Configuring ARP
- Restrictions for Configuring ARP
- Information About Configuring ARP
- How to Configure ARP
- Configuration Examples for ARP Configuration on Cisco IOS XR Software
- Additional References
Prerequisites for Configuring ARP
Restrictions for Configuring ARP
The following restrictions apply to configuring ARP :
-
Reverse Address Resolution Protocol (RARP) is not supported.
-
Due to a hardware limitation in the Ethernet SPA interfaces installed on all routers, when a packet contains a wrong destination address, the corresponding SPA drops the packet even if the ingress packet count is already incremented in the output of the show interfaces command.
-
ARP throttling is not supported.

Note
ARP throttling is the rate limiting of ARP packets in Forwarding Information Base (FIB).
The following additional restrictions apply when configuring the Direct Attached Gateway Redundancy (DAGR) feature on Cisco ASR 9000 Series Routers:
Information About Configuring ARP
To configure ARP, you must understand the following concepts:
- IP Addressing Overview
- Address Resolution on a Single LAN
- Address Resolution When Interconnected by a Router
- ARP and Proxy ARP
- ARP Cache Entries
- Direct Attached Gateway Redundancy
IP Addressing Overview
A device in the IP can have both a local address (which uniquely identifies the device on its local segment or LAN) and a network address (which identifies the network to which the device belongs). The local address is more properly known as a data link address, because it is contained in the data link layer (Layer 2 of the OSI model) part of the packet header and is read by data-link devices (bridges and all device interfaces, for example). The more technically inclined person will refer to local addresses as MAC addresses, because the MAC sublayer within the data link layer processes addresses for the layer.
To communicate with a device on Ethernet, for example, Cisco IOS XR software first must determine the 48-bit MAC or local data-link address of that device. The process of determining the local data-link address from an IP address is called address resolution.
Address Resolution on a Single LAN
The following process describes address resolution when the source and destination devices are attached to the same LAN:
-
End System A broadcasts an ARP request onto the LAN, attempting to learn the MAC address of End System B.
-
The broadcast is received and processed by all devices on the LAN, including End System B.
-
Only End System B replies to the ARP request. It sends an ARP reply containing its MAC address to End System A.
-
End System A receives the reply and saves the MAC address of End System B in its ARP cache. (The ARP cache is where network addresses are associated with MAC addresses.)
-
Whenever End System A needs to communicate with End System B, it checks the ARP cache, finds the MAC address of System B, and sends the frame directly, without needing to first use an ARP request.
Address Resolution When Interconnected by a Router
The following process describes address resolution when the source and destination devices are attached to different LANs that are interconnected by a router (only if proxy-arp is turned on):
-
End System Y broadcasts an ARP request onto the LAN, attempting to learn the MAC address of End System Z.
-
The broadcast is received and processed by all devices on the LAN, including Router X.
-
Router X checks its routing table and finds that End System Z is located on a different LAN.
-
Router X therefore acts as a proxy for End System Z. It replies to the ARP request from End System Y, sending an ARP reply containing its own MAC address as if it belonged to End System Z.
-
End System Y receives the ARP reply and saves the MAC address of Router X in its ARP cache, in the entry for End System Z.
-
When End System Y needs to communicate with End System Z, it checks the ARP cache, finds the MAC address of Router X, and sends the frame directly, without using ARP requests.
-
Router X receives the traffic from End System Y and forwards it to End System Z on the other LAN.
ARP and Proxy ARP
Two forms of address resolution are supported by Cisco IOS XR software: Address Resolution Protocol (ARP) and proxy ARP, as defined in RFC 826 and RFC 1027, respectively. Cisco IOS XR software also supports a form of ARP called local proxy ARP.
ARP is used to associate IP addresses with media or MAC addresses. Taking an IP address as input, ARP determines the associated media address. After a media or MAC address is determined, the IP address or media address association is stored in an ARP cache for rapid retrieval. Then the IP datagram is encapsulated in a link-layer frame and sent over the network.
When proxy ARP is disabled, the networking device responds to ARP requests received on an interface only if one of the following conditions is met:
-
The target IP address in the ARP request is the same as the interface IP address on which the request is received.
-
The target IP address in the ARP request has a statically configured ARP alias.
When proxy ARP is enabled, the networking device also responds to ARP requests that meet all the following conditions:
-
The target IP address is not on the same physical network (LAN) on which the request is received.
-
The networking device has one or more routes to the target IP address.
-
All of the routes to the target IP address go through interfaces other than the one on which the request is received.
When local proxy ARP is enabled, the networking device responds to ARP requests that meet all the following conditions:
-
The target IP address in the ARP request, the IP address of the ARP source, and the IP address of the interface on which the ARP request is received are on the same Layer 3 network.
-
The next hop for the target IP address is through the same interface as the request is received.
Typically, local proxy ARP is used to resolve MAC addresses to IP addresses in the same Layer 3 network such as, private VLANs that are Layer 2-separated. Local proxy ARP supports all types of interfaces supported by ARP and unnumbered interfaces.
ARP Cache Entries
ARP establishes correspondences between network addresses (an IP address, for example) and Ethernet hardware addresses. A record of each correspondence is kept in a cache for a predetermined amount of time and then discarded.
You can also add a static (permanent) entry to the ARP cache that persists until expressly removed.
Direct Attached Gateway Redundancy
Direct Attached Gateway Redundancy (DAGR) allows third-party redundancy schemes on connected devices to use gratuitous ARP as a failover signal, enabling the ARP process to advertise an new type of route in the Routing Information Base (RIB). These routes are distributed by Open Shortest Path First (OSPF).
Sometimes part of an IP network requires redundancy without routing protocols. A prime example is in the mobile environment, where devices such as base station controllers and multimedia gateways are deployed in redundant pairs, with aggressive failover requirements (subsecond or less), but typically do not have the capability to use native Layer 3 protocols such as OSPF or Intermediate System-to-Intermediate System (IS-IS) protocol to manage this redundancy. Instead, these devices assume they are connected to adjacent IP devices over an Ethernet switch, and manage their redundancy at Layer 2, using proprietary mechanisms similar to Virtual Router Redundancy Protocol (VRRP). This requires a resilient Ethernet switching capability, and depends on mechanisms such as MAC learning and MAC flooding.
DAGR is a feature that enables many of these devices to connect directly to Cisco ASR 9000 Series Routers without an intervening Ethernet switch. DAGR enables the subsecond failover requirements to be met using a Layer 3 solution. No MAC learning, flooding, or switching is required.
![]() Note | Since mobile devices' 1:1 Layer 2 redundancy mechanisms are proprietary, they do not necessarily conform to any standard. So although most IP mobile equipment is compatible with DAGR, interoperability does require qualification, due to the possibly proprietary nature of the Layer 2 mechanisms with which DAGR interfaces. |
Additional Guidelines
The following are additional guidelines to consider when configuring DAGR:
-
Up to 40 DAGR peers, which may be on the same or different interfaces, are supported per system.
-
Failover is supported for DAGR routes within 500 ms of receipt of an ARP reply packet.
-
On ARP process restart, DAGR groups are reinitialized.
How to Configure ARP
This section contains instructions for the following tasks:
- Defining a Static ARP Cache Entry
- Enabling Proxy ARP
- Enabling Local Proxy ARP
- Configuring DAGR
- Configuring ARP purge-delay
- Configuring ARP timeout
- Configure Learning of Local ARP Entries
Defining a Static ARP Cache Entry
ARP and other address resolution protocols provide a dynamic mapping between IP addresses and media addresses. Because most hosts support dynamic address resolution, generally you need not to specify static ARP cache entries. If you must define them, you can do so globally. Performing this task installs a permanent entry in the ARP cache. Cisco IOS XR software uses this entry to translate 32-bit IP addresses into 48-bit hardware addresses.
Optionally, you can specify that the software responds to ARP requests as if it were the owner of the specified IP address by making an alias entry in the ARP cache.
1.
configure
2.
Do one of the
following:
3.
commit
DETAILED STEPS
Enabling Proxy ARP
Cisco IOS XR software uses proxy ARP (as defined in RFC 1027) to help hosts with no knowledge of routing determine the media addresses of hosts on other networks or subnets. For example, if the router receives an ARP request for a host that is not on the same interface as the ARP request sender, and if the router has all of its routes to that host through other interfaces, then it generates a proxy ARP reply packet giving its own local data-link address. The host that sent the ARP request then sends its packets to the router, which forwards them to the intended host. Proxy ARP is disabled by default; this task describes how to enable proxy ARP if it has been disabled.
1.
configure
2.
interface
type number
3.
proxy-arp
4.
commit
DETAILED STEPS
| Command or Action | Purpose |
|---|
Enabling Local Proxy ARP
Local proxy ARP is disabled by default; this task describes how to enable local proxy ARP.
1.
configure
2.
interface
type
number
3.
local-proxy-arp
4.
commit
DETAILED STEPS
| Command or Action | Purpose |
|---|
Configuring DAGR
Follow these steps to create a DAGR group on the Cisco ASR 9000 Series Router.
1.
configure
2.
interface
type
interface-path-id
3.
arp
dagr
4.
peer
ipv4
address
5.
route
distance normal
normal-
distance
priority
priority-distance
6.
route metric
normal
normal-
metric
priority
priority-metric
7.
timers
query
query-time
standby
standby-time
8.
priority-timeout
time
9.
Do one of the
following:
10.
show
arp
dagr
[
interface [
IP-address ]]
DETAILED STEPS
| Command or Action | Purpose | |
|---|---|---|
| Step 1 |
configure
Example: RP/0/RSP0/CPU0:router# configure
|
Enters global configuration mode. |
| Step 2 |
interface
type
interface-path-id
Example:
RP/0/RSP0/CPU0:router(config)# interface gigabitethernet 0/2/0/0
|
Enters interface configuration mode and configures an interface. |
| Step 3 |
arp
dagr
Example:
RP/0/RSP0/CPU0:router(config-if)# arp dagr
|
Enters DAGR configuration mode. |
| Step 4 |
peer
ipv4
address
Example:
RP/0/RSP0/CPU0:router(config-if-dagr)# peer ipv4 10.0.0.100
|
Creates a new DAGR group for the virtual IP address. |
| Step 5 |
route
distance normal
normal-
distance
priority
priority-distance
Example:
RP/0/RSP0/CPU0:router(config-if-dagr-peer)# route distance normal 140 priority 3
|
(Optional) Configures route distance for the DAGR group. |
| Step 6 |
route metric
normal
normal-
metric
priority
priority-metric
Example:
RP/0/RSP0/CPU0:router(config-if-dagr-peer)# route metric normal 84 priority 80
|
(Optional) Configures the route metric for the DAGR group. |
| Step 7 |
timers
query
query-time
standby
standby-time
Example:
RP/0/RSP0/CPU0:router(config-if-dagr-peer)# timers query 2 standby 19
|
(Optional) Configures the time in seconds between successive ARP requests being sent out for the virtual IP address. |
| Step 8 |
priority-timeout
time
Example:
RP/0/RSP0/CPU0:router(config-if-dagr-peer)# priority-timeout 25
|
(Optional) Configures a timer for the length of time in seconds to wait before reverting to normal priority from a high-priority DAGR route. |
| Step 9 | Do one of the
following:
Example: RP/0/RSP0/CPU0:router(config-if-dagr)# end
or RP/0/RSP0/CPU0:router(config-if-dagr)# commit
|
Saves configuration changes.
Use the commit command to save the configuration changes to the running configuration file and remain within the configuration session. |
| Step 10 |
show
arp
dagr
[
interface [
IP-address ]]
Example:
RP/0/RSP0/CPU0:router# show arp dagr
|
(Optional) Displays the operational state of all DAGR groups. Using the optional interface and IP-address arguments restricts the output to a specific interface or virtual IP address. |
Configuring ARP purge-delay
With Equal Cost Multi Path (ECMP), traffic is load balanced across multiple paths with equal cost. This should provide resiliency against interface flaps. If an interface goes down, the traffic is then routed via the other interface without traffic loss. However, if the first interface comes up, traffic is routed back over it but forwarding will only resume once ARP has been (re)resolved and the adjcency (re)installed. Here a short unexpected interface flap causes this traffic loss and is particularly undesirable.
The purge-delay feature allows existing dynamic entries to persist rather than immediately delete entries which could cause traffic loss following an interface flap.
The purge delay feature works by caching existing dynamic ARP entries when an interface goes down and starting a purge delay timer. When the interface is brought back and the purge delay timer not yet fired, the entries are reinstalled as before. The normal entry timeout is reduced in order to re-ARP for the entries after any interface state change related churn has died down; should the purge delay timer fire before the interface comes back up, the entries are deleted from the cache.
1.
configure
2.
3.
4.
commit
DETAILED STEPS
| Command or Action | Purpose |
|---|
Configuring ARP timeout
Dynamic ARP entries which are learnt by ARP address resolution (when valid ARP replies are received) are timed out every 4 hours by default in order to remove stale entries.
ARP entries that correspond to the local interface or that are statically configured by the user never time out.
DETAILED STEPS
| Command or Action | Purpose | |
|---|---|---|
| Step 1 | Example:
RP/0/RSP0/CPU0:router# configure
|
Enters global configuration mode. |
| Step 2 | Example:
RP/0/RSP0/CPU0:router(config)# interface MgmtEth 0/
|
Enters interface configuration mode. |
| Step 3 | Example:
RP/0/RSP0/CPU0:router(config-if)# arp timeout 100
|
Sets the ARP cache timeout interval. |
| Step 4 | Do one of the following:
Example:
RP/0/RSP0/CPU0:router(config-if)# end
or
RP/0/RSP0/CPU0:router(config-if)# commit
|
Saves configuration changes.
|
Configure Learning of Local ARP Entries
You can configure an interface or a sub-interface to learn only the ARP entries from its local subnet.
Use the following procedure to configure local ARP learning on an interface.
-
Enter the interface configuration mode.
RP/0/RSP0/CPU0:router(config)# interface GigabitEthernet 0/0/0/1 -
Configure the IPv4/IPv6 address for the interface.
RP/0/RSP0/CPU0:router (config-if)# ipv4 address 12.1.3.4 255.255.255.0 -
Configure local ARP learning on the interface.
RP/0/RSP0/CPU0:router(config-if)# arp learning local -
Enable the interface and commit your configuration.
RP/0/RSP0/CPU0:router(config-if)# no shut RP/0/RSP0/CPU0:router(config-if)# commit RP/0/0/CPU0:Dec 12 13:41:16.580 : ifmgr[397]: %PKT_INFRA-LINK-3-UPDOWN : Interface GigabitEthernet0/0/0/1, changed state to Down RP/0/0/CPU0:Dec 12 13:41:16.683 : ifmgr[397]: %PKT_INFRA-LINK-3-UPDOWN : Interface GigabitEthernet0/0/0/1, changed state to Up
-
Confirm your configuration.
RP/0/RSP0/CPU0:router(config-if)# show running-configuration .. Building configuration... !! IOS XR Configuration 0.0.0 !! Last configuration change at Mon Dec 12 13:41:16 2016 ! interface GigabitEthernet0/0/0/1 ipv4 address 12.1.3.4 255.255.255.0 arp learning local ! -
Verify if local ARP learning is working as configured on the interface.
RP/0/RSP0/CPU0:router(config-if)# do show arp idb gigabitEthernet 0/0/0/1 location 0/0/CPU0 Thu Dec 15 10:00:11.733 IST GigabitEthernet0/0/0/1 (0x00000040): IPv4 address 12.1.3.4, Vrf ID 0x60000000 VRF Name default Dynamic learning: Local Dynamic entry timeout: 14400 secs Purge delay: off IPv4 caps added (state up) MPLS caps not added Interface not virtual, not client fwd ref, Proxy arp not configured, not enabled Local Proxy arp not configured Packet IO layer is NetIO Srg Role : DEFAULT Idb Flag : 2146444 IDB is Complete -
(Optional) You can monitor the ARP traffic on the interface.
RP/0/RSP0/CPU0:router(config-if)# do show arp traffic gigabitEthernet 0/0/0/1 location 0/0/CPU0 Thu Dec 15 10:13:28.964 IST ARP statistics: Recv: 0 requests, 0 replies Sent: 0 requests, 1 replies (0 proxy, 0 local proxy, 1 gratuitous) Subscriber Interface: 0 requests recv, 0 replies sent, 0 gratuitous replies sent Resolve requests rcvd: 0 Resolve requests dropped: 0 Errors: 0 out of memory, 0 no buffers, 0 out of sunbet ARP cache: Total ARP entries in cache: 1 Dynamic: 0, Interface: 1, Standby: 0 Alias: 0, Static: 0, DHCP: 0 IP Packet drop count for GigabitEthernet0_0_0_1: 0
Configuration Examples for ARP Configuration on Cisco IOS XR Software
- Creating a Static ARP Cache Entry: Example
- Enabling Proxy ARP: Example
- Enabling DAGR and Configuring a DAGR Group: Example
- Displaying the Operational State of DAGR Groups: Example
Creating a Static ARP Cache Entry: Example
The following is an example of a static ARP entry for a typical Ethernet host:
configure arp 192.168.7.19 0800.0900.1834 arpa
The following is an example of a static ARP entry for a typical Ethernet host where the software responds to ARP requests as if it were the owner of both the specified IP address and hardware address, whether proxy ARP is enabled or not:
configure arp 192.168.7.19 0800.0900.1834 arpa alias
The following is an example of configuring a static arp entry on an SRP device:
configure arp 192.168.8.20 0800.0900.1723 srp
Enabling Proxy ARP: Example
The following is an example of enabling proxy ARP:
configure interface MgmtEth 0/ RSP0 /CPU0/0 proxy-arp
Enabling DAGR and Configuring a DAGR Group: Example
The following is an example of enabling DAGR and configuring a DAGR group peer:
configure interface gigabitethernet 0/1/0/0.1 arp dagr peer ipv4 192.168.7.19 priority-timeout 25 route distance normal 48 priority 5 route metric normal 48 priority 5 timers query 2 standby 40 commit
Displaying the Operational State of DAGR Groups: Example
Additional References
The following sections provide references related to ARP.
Related Documents
|
Related Topic |
Document Title |
|---|---|
|
ARP commands |
ARP Commands module in Cisco ASR 9000 Series Aggregation Services Router IP Addresses and Services Command Reference |
|
Getting started material |
Cisco ASR 9000 Series Aggregation Services Router Getting Started Guide |
|
Related Topic |
Document Title |
|---|---|
|
QoS commands: complete command syntax, command modes, command history, defaults, usage guidelines, and examples |
Quality of Service Commands module in Cisco ASR 9000 Series Aggregation Services Router Modular Quality of Service Command Reference |
|
Class-based traffic shaping, traffic policing, low latency queuing, and MDDR |
Configuring Modular Quality of Service Congestion Management module in Cisco ASR 9000 Series Aggregation Services Router Modular Quality of Service Configuration Guide |
Standards
|
Standards |
Title |
|---|---|
|
No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature. |
— |
MIBs
|
MIBs |
MIBs Link |
|---|---|
| — |
To locate and download MIBs, use the Cisco MIB Locator found at the following URL and choose a platform under the Cisco Access Products menu: http://cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml |
RFCs
|
RFCs |
Title |
|---|---|
|
RFC 826 |
Ethernet Address Resolution Protocol: Or converting network protocol addresses to 48.bit Ethernet address for transmission on Ethernet hardware |
|
RFC 1027 |
Using ARP to implement transparent subnet gateways |
Technical Assistance
|
Description |
Link |
|---|---|
|
The Cisco Technical Support website contains thousands of pages of searchable technical content, including links to products, technologies, solutions, technical tips, and tools. Registered Cisco.com users can log in from this page to access even more content. |
Feedback