Description

This article describes the issue of an ARP entry, for a particular IP address, not showing up in the SRX ARP cache. The output of the command is empty:

show arp no-resolve | match <an IP address>

Symptoms

When the SRX device tries to forward an Ethernet frame to the Broadcast Segment, it looks up the SRX ARP cache for the Destination IP address. If it does not find the ARP entry for the particular IP address, it tries to send an ARP request as a MAC broadcast ( ff:ff:ff:ff:ff:ff ) to the segment.

The Host that has this IP will reply with the ARP response filled with its own MAC Address. The SRX device will extract that MAC address from the ARP reply and populate the ARP table with IP > MAC mapping . For example:

show arp no-resolve
MAC Address       Address         Interface            Flags
00:26:b0:f5:d3:24 10.1.1.3        vlan.0               none << ARP entry for two LAN hosts
2c:6b:f5:09:cc:80 10.1.1.4        vlan.0               none
00:01:5c:3d:6a:41 24.6.206.3      ge-0/0/0.0           none << ARP entry for SRX's Internet Router 24.6.206.3
00:14:bf:4c:8d:08 192.168.0.110   fe-0/0/2.0           none << ARP entry for SRX's DMZ server 192.168.0.110


But, at times, the SRX device fails to cache the ARP entry for the IP address.

Solution


The reason for SRX not caching the MAC address for a certain IP, could be that the MAC address extracted by the device from the ARP response is a multicast MAC; SRX devices will not cache Multicast MAC addresses.

The following image, taken from an open resource (Wikipedia.org), correctly displays the anatomy of the 6 byte Ethernet MAC address:

alt





If the LSB (Least Significant Bit) of the 1st Octet in the MAC address is set to 0, then the MAC address will be unicast; else it will be Multicast and the SRX will not cache it in the ARP table.