IP Addresses and Services Configuration Guide for Cisco 8000 Series Routers, IOS XR Releases

PDF

IP Addresses and Services Configuration Guide for Cisco 8000 Series Routers, IOS XR Releases

ARP cache management

Want to summarize with AI?

Log in

Explains how four ARP controls preserve entries, expire stale mappings, limit cache growth, and police duplicates and provides procedures for configuring and verifying each control.


Address Resolution Protocol (ARP) cache management uses controls that

  • preserve dynamic entries during short interface flaps and expire stale entries

  • limit dynamic entries on each interface to protect cache resources, and

  • police duplicate requests from the same IP address or MAC address.


ARP purge delays

An ARP purge delay is an interface recovery control that

  • caches existing dynamic ARP entries when an interface goes down

  • restores cached entries when the interface returns before the purge timer expires, and

  • deletes cached entries when the purge timer expires before the interface returns.

Entry refresh after an interface flap

The system temporarily reduces the normal entry timeout after the interface state changes.

The reduced timeout starts new ARP resolution after the interface state stabilizes.

Use with equal-cost multipath

Equal-cost multipath (ECMP) sends traffic across paths that have equal cost.

A short interface flap can move traffic to another path and then return it to the restored path.

The purge delay preserves entries until ARP resolution and adjacency installation resume forwarding.


Configure the ARP purge delay

Configure a purge delay to preserve dynamic ARP entries during a short interface flap.

This example configures a 100-second purge delay on interface HundredGigE 0/0/0/34.

Before you begin

Identify the interface and select a purge-delay value.

Follow these steps to configure the ARP purge delay.

Procedure

  1. Set the purge delay to 100 seconds in interface configuration mode.

    Example:

    Router# configure
    Router(config)# interface HundredGigE 0/0/0/34
    Router(config-if)# arp purge-delay 100
    Router(config-if)# commit
  2. Display the running interface configuration.

    Example:

    Router# show running-config interface HundredGigE 0/0/0/34
    interface HundredGigE0/0/0/34
     arp purge-delay 100
     shutdown
    !
  3. Verify that the interface data reports a 100-second purge delay.

    Example:

    Router# show arp idb HundredGigE 0/0/0/34 location 0/RP0/CPU0
    HundredGigE0/0/0/34:
      IDB Client: default
      IPv4 address 192.0.2.1, Vrf ID 0x00000000
      VRF Name unknown
      Dynamic learning: Enable
      Dynamic entry timeout: 14400 secs
      Drop adjacency timeout: Disable
      Purge delay: 100 seconds
      Proxy arp not configured, not enabled
      Local Proxy arp not configured
      Packet IO layer is NetIO
      Srg Role: DEFAULT
      Total entries: 1

The interface retains dynamic ARP entries for up to 100 seconds after it goes down.


ARP timeouts

An ARP timeout is an entry-aging control that

  • applies to dynamic entries that the system learns from valid ARP replies

  • removes stale dynamic entries every four hours by default, and

  • does not expire local-interface entries or statically configured entries.


Configure the ARP timeout

Configure how long dynamic ARP entries remain in the cache before they expire.

This example configures a 100-second timeout on interface HundredGigE 0/0/0/35.

Before you begin

Identify the interface and select a timeout value.

Follow these steps to configure the ARP timeout.

Procedure

  1. Set the dynamic entry timeout to 100 seconds in interface configuration mode.

    Example:

    Router(config)# interface HundredGigE 0/0/0/35
    Router(config-if)# arp timeout 100
    Router(config-if)# commit
  2. Display the running interface configuration.

    Example:

    Router# show running-config interface HundredGigE 0/0/0/35
    interface HundredGigE0/0/0/35
     arp timeout 100
     shutdown
    !
  3. Verify that the interface data reports a 100-second dynamic entry timeout.

    Example:

    Router# show arp idb HundredGigE 0/0/0/35 location 0/RP0/CPU0
    HundredGigE0/0/0/35:
      IDB Client: default
      IPv4 address 192.0.2.1, Vrf ID 0x00000000
      VRF Name unknown
      Dynamic learning: Enable
      Dynamic entry timeout: 100 secs
      Drop adjacency timeout: Disable
      Purge delay: off
      Proxy arp not configured, not enabled
      Local Proxy arp not configured
      Packet IO layer is NetIO
      Srg Role: DEFAULT
      Total entries: 1

Dynamic ARP entries on the interface expire after 100 seconds.


ARP cache entry limits

An Address Resolution Protocol (ARP) cache entry limit is an overflow-protection control that

  • sets the maximum number of dynamic ARP entries that an interface can learn

  • prevents cache entries from consuming excessive router memory, and

  • drops new requests after the cache reaches the configured limit.

Table 1. Feature History Table

Feature Name

Release Information

Feature Description

Limit Address Resolution Protocol (ARP) Cache Entries per Interface

Release 25.4.1

Introduced in this release on: Fixed Systems (8010 [ASIC: A100])(select variants only*)

This feature is supported on:

  • 8011-32Y8L2H2FH

  • 8011-12G12X4Y-A/D

Limit Address Resolution Protocol (ARP) Cache Entries per Interface

Release 25.1.1

Introduced in this release on: Fixed Systems (8700 [ASIC: K100], 8010 [ASIC: A100])(select variants only*)

This feature is supported on:

  • 8712-MOD-M

  • 8011-4G24Y4H-I

Limit Address Resolution Protocol (ARP) Cache Entries per Interface

Release 24.4.1

Introduced in this release on: Fixed Systems (8200 [ASIC: P100], 8700 [ASIC: P100])(select variants only*); Modular Systems (8800 [LC ASIC: P100])(select variants only*)

*This feature is supported on:

  • 8212-48FH-M

  • 8711-32FH-M

  • 88-LC1-36EH

  • 88-LC1-12TH24FH-E

  • 88-LC1-52Y8H-EM

Limit Address Resolution Protocol (ARP) Cache Entries per Interface

Release 7.5.4

In this feature, you can configure the maximum limit for the number of entries of dynamic mapping between IP addresses and media addresses by ARP per interface. Limiting the number of entries provides overflow protections in ARP cache and protects the routers from DOS attacks by preventing memory overuse by cache entries.

This feature introduces the arp cache-limit command.

Supported values and resources

  • You can configure a value from 0 to 127,999 on each interface.

  • The maximum cache capacity is 127,999 entries.

  • Available ARP cache resources depend on router hardware. Select a limit that fits the available resources.

Cache-limit behavior

The cache limit has these effects:

  • The router drops new ARP requests when the cache reaches or exceeds the configured limit.

  • The router stops learning from ARP packets after the cache exceeds the configured limit.

  • The limit does not apply to static ARP entries.

  • The router does not enforce the limit on entries that an ARP client triggers.

  • The router retains dynamic entries that it learned before a lower limit was configured.

  • The router generates a syslog message when the cache reaches the limit.

  • The router generates another syslog message for every 1,000 entries beyond the limit.

  • The show arp idb command displays ARP entry statistics.


Limit ARP cache entries per interface

Limit dynamic Address Resolution Protocol (ARP) entries to protect the interface cache from overflow and memory overuse.

This example sets the cache limit to 3900 on interface HundredGigE 0/0/0/0.

Before you begin

Select a value from 0 to 127999 that fits the available router resources.

Follow these steps to limit ARP cache entries per interface.

Procedure

  1. Set the ARP cache limit to 3900 entries in interface configuration mode.

    Example:

    Router# configure
    Router(config)# interface HundredGigE 0/0/0/0
    Router(config-if)# arp cache-limit 3900
    Router(config-if)# commit
  2. Display the running interface configuration.

    Example:

    Router# show running-config interface HundredGigE 0/0/0/0
    interface HundredGigE0/0/0/0
     arp cache-limit 3900
    !
    !
  3. Verify the cache limit and entry counters.

    Example:

    Router# show arp idb HundredGigE 0/0/0/0 location RP0
    HundredGigE0/0/0/0:
      IDB Client: default
      IPv4 address 192.0.2.1, Vrf ID 0x60000000
      VRF Name default
      Dynamic learning: Enable
      Dynamic entry timeout: 14400 secs
      Drop adjacency timeout: Disable
      Purge delay: off
      Cache limit: 3900
      Incomplete glean count: 0
      Complete glean count: 0
      Complete protocol count: 0
      Dropped glean count: 0
      Dropped protocol count: 0

ARP duplicate policers

An ARP duplicate policer is a request-control mechanism that

  • checks requests from the same sender IP address within the configured interval

  • drops a new request when a response already exists for that IP address, and

  • checks the MAC-address policer when no response exists for that IP address.

Duplicate request handling

The router drops ARP requests from the same IP address or MAC address during the configured interval.


Police duplicate ARP packets

Set an interval for policing duplicate Address Resolution Protocol (ARP) packets from the same IP address or MAC address.

This example sets the global ARP policing interval to 34.

Procedure

Set the ARP policing interval to 34 in global configuration mode.

Example:

Router# configure
Router(config)# arp police-interval 34
Router(config)# commit