Collect IPv4 ARP and IPv6 neighbor entries from Cisco ASA devices.

You will need the following configuration for the user to automatically enter enable status after login:

aaa authorization exec LOCAL auto-enable

To use an enable password seaparate from the login password, add an enable_password under device_auth in your configuration file:

device_auth: - tag: sshasa driver: cli platform: ASAContext only: '' username: oliver password: letmein enable_password: myenablepass


arpnip($host, $ssh)

Retrieve ARP and neighbor entries from device. $host is the hostname or IP address of the device. $ssh is a Net::OpenSSH connection to the device.

Returns a list of hashrefs in the format { mac => MACADDR, ip => IPADDR }.

This was kindly created by @haught and mentioned in as being a context-aware version of

The code is imported from However this version did not have some improvements added in dc9feb747f..b58a62f300, so we tried to merge all of this in here. However we lack the ability to try it, so we also left in place the original which is confirmed to work.