NetCrosswalk: Cross-Vendor Network Task Translator

You know how to do it on one box. Here's how it's done on the other — GUI or CLI, plus the gotchas.

30 tasks
Diagnostics & Troubleshooting

Check the ARP / neighbor table

Map an IP address to the MAC address the device has learned for it, to prove L2 adjacency and spot duplicates.

Why it differs: Mostly a naming problem — the same table is called ARP, neighbors, or the device list depending on vendor, and IPv6 lives in a separate table on all of them.

Router / switch / AP

MikroTik RouterOS

GUI or CLI
Written against RouterOS 7.x

Steps

  1. GUI: IP → ARP
  2. CLI: /ip arp print
  3. Find one host: /ip arp print where address=192.168.88.10
  4. IPv6: /ipv6 neighbor print

Gotchas & notes

  • Do not confuse IP → ARP with IP → Neighbors; the latter is MikroTik's own discovery protocol (MNDP/CDP/LLDP) listing nearby network devices, not an ARP table.
  • Entries marked DC are dynamic+complete; D alone with no MAC means an incomplete resolution — usually the host is off or on a different VLAN than you think.
  • If an interface has arp=reply-only set, the table will not learn dynamically and only static entries work. Check /interface ethernet print detail when the table is unexpectedly empty.
Vendor documentation ↗
NGFW / router

Fortinet FortiGate (FortiOS)

GUI or CLI
Written against FortiOS 7.2 – 7.6

Steps

  1. CLI: get system arp
  2. More detail incl. interface: diagnose ip arp list
  3. IPv6: diagnose ipv6 neighbor-cache list
  4. GUI: Dashboard → Network → ARP Table widget (if present in your build).

Gotchas & notes

  • get system arp is short and pleasant; diagnose ip arp list is the one that shows the interface and VDOM, which is what you actually need in a multi-VLAN setup.
  • Clear a stale entry with execute clear system arp table — note this flushes the entire table, briefly re-resolving everything. There is no per-entry delete in most versions.
  • The ARP table is per-VDOM; make sure you are in the right VDOM before deciding an entry is missing.
Vendor documentation ↗
Controller-managed gateway / switch / AP

Ubiquiti UniFi Network

GUI or CLI
Written against UniFi Network 8.x – 9.x (UDM / UDM-Pro / UXG)

Steps

  1. GUI: Clients list shows IP↔MAC for every known client, which covers the normal use case.
  2. CLI (gateway): SSH → ip neigh show (Linux replacement for arp -a).
  3. Per-switch MAC learning: Devices → <switch> → Ports shows what is seen on each port.

Gotchas & notes

  • The Clients list is controller state, not a live ARP table — a device that just changed IP may show stale data until the next poll.
  • Wired clients on unmanaged downstream switches all appear on one uplink port, so port-level attribution stops at the first non-UniFi switch.
  • arp -a is often absent on the gateway's minimal userland; ip neigh is the reliable command.
Vendor documentation ↗
Router / switch

Cisco IOS / IOS-XE

CLI
Written against IOS-XE 17.x (Catalyst 9000, ISR 1000/4000)

Steps

  1. show ip arp — or narrow it: show ip arp 192.168.1.10
  2. Per-VRF: show ip arp vrf MGMT
  3. IPv6: show ipv6 neighbors
  4. Related but different: show mac address-table (L2) — see the MAC table task.

Gotchas & notes

  • ARP and the MAC address table are different tables answering different questions: ARP is IP→MAC, MAC table is MAC→port. Troubleshooting usually needs both, in that order.
  • Default ARP cache timeout on IOS is 4 hours, far longer than the 5-minute MAC aging timer. That mismatch causes traffic black-holing after a device moves ports — a classic exam and real-world gotcha.
  • Clear a single entry with clear arp-cache (whole table) or clear ip arp 192.168.1.10 (one entry) — Cisco does give you per-entry clearing, unlike FortiGate.
  • An Incomplete entry means ARP went unanswered: wrong VLAN, wrong mask, or the host is down.
Vendor documentation ↗
NGFW

Palo Alto Networks PAN-OS

GUI or CLI
Written against PAN-OS 10.2 / 11.x

Steps

  1. CLI: show arp all — or per interface: show arp ethernet1/1
  2. IPv6: show neighbor interface ethernet1/1
  3. GUI: Network → Interfaces, click the interface, then *More Runtime Stats* → ARP tab.

Gotchas & notes

  • The GUI path is genuinely obscure — *More Runtime Stats* is a small link inside the interface dialog, and it is where ARP, DHCP, and interface counters hide.
  • show arp all includes the management interface's entries alongside dataplane ones; check the interface column before drawing conclusions.
  • Static ARP entries are configured per-interface under Network → Interfaces → <int> → Advanced → ARP Entries and require a Commit like everything else.
Vendor documentation ↗
Router / firewall (FreeBSD)

Netgate pfSense CE

GUI or CLI
Written against pfSense CE 2.7 / Plus 24.x

Steps

  1. GUI: Diagnostics → ARP Table — sortable, with hostname and interface columns.
  2. IPv6: Diagnostics → NDP Table
  3. CLI: arp -an or ndp -an

Gotchas & notes

  • The GUI ARP table resolves hostnames from DHCP leases, so you get a name next to each MAC — the friendliest version of this table across all six vendors.
  • It also flags duplicate IPs, which is the fastest way to catch a rogue static address colliding with a DHCP lease.
  • Each row has a delete button for clearing one stale entry without flushing the table.
Vendor documentation ↗
NGFW

SonicWall (SonicOS)

GUI or CLI
Written against SonicOS 7.3.x (Gen7 TZ/NSa/NSsp; current General Release line is 7.3.2/7.3.3 — note Gen8 TZ80/TZ280+/NSa 2800+ hardware instead runs the separate SonicOS 8.x line)

Steps

  1. GUI: Device > Diagnostics > Diagnostic Tools, "Perform" dropdown → ARP Cache, which lists learned IP-to-MAC mappings per interface.
  2. IPv6 neighbors live in a separate table — check the IPv6 Neighbor Discovery/NDP page under Network > IPv6 rather than expecting them in ARP Cache.
  3. CLI: show arp from the E-CLI prompt over SSH or console for the same table without opening the GUI.

Changed across versions

  • 7.0Moved from System > Diagnostics (6.5) into Device > Diagnostics with the 7.0 GUI reorganization.

Gotchas & notes

  • Same split as every other vendor: ARP for IPv4, a separate Neighbor Discovery table for IPv6 — the ARP Cache page will not show v6 hosts.
  • The diagnostics-page ARP view is read-only; clearing/flushing a stale or duplicate entry (common when a host's NIC or MAC has changed) is a separate action from just viewing the table, so don't expect a refresh alone to fix a stuck mapping.
Vendor documentation ↗
Cloud-managed business routers, switches & Orbi Pro/WiFi APs

NETGEAR Insight (Cloud Management Platform)

GUI or CLI
Written against Insight Cloud Portal/App 10.0.x (cloud mgmt); switch-side CLI varies by line — Smart Switch "Lite CLI" firmware 6.0.10.5+/7.0.9.5+, fully-managed M4200/M4300 CLI 12.0.11.x

Steps

  1. Cloud/GUI (routers, Orbi Pro APs, and switches): Insight portal/app > Topology or device > Clients shows IP-to-MAC mappings for connected devices — Insight's framing is a resolved 'client list' rather than a raw ARP table.
  2. Local GUI (switches): Monitoring > ARP Table (wording varies by model/firmware) on the switch's local HTTPS page.
  3. CLI (M4200/M4300): show arp for the IPv4 table; show ipv6 neighbors for the separate IPv6 table.
  4. CLI (Smart Switch Lite CLI): a basic show arp is typically present; IPv6 neighbor visibility is limited or absent depending on firmware.
  5. Routers/Orbi Pro APs: the Insight Clients list from step 1 is the only view — there's no exposed raw ARP table terminology, just resolved entries with IP, MAC, hostname, connection type.

Gotchas & notes

  • Insight abstracts this as a 'client list,' which ages entries out based on recent activity rather than a true ARP cache timer — a device missing from the Insight list isn't proof it's gone, just that it's been quiet.
  • The IPv6 neighbor table is really only reliable on the M4200/M4300 CLI (show ipv6 neighbors) — don't expect it on Smart Switches or anywhere in the Insight GUI, which skews heavily IPv4.
  • On a pure L2 smart switch, remember ARP and MAC address table are different questions — an L2-only switch has no ARP table of its own, only a MAC table (show mac-address-table on the M4300), so 'is this IP reachable' and 'is this MAC on this port' aren't answered by the same command.
Vendor documentation ↗