In IPv4 world, when you want to talk to another computer, you ask which MAC address claims a given IPv4 address, the arp who-has ... tell ... exchange as per tcpdump, and a cache of such mappings from IPv4 to MAC addresses is usually available though arp -an.

What about IPv6, with manual configuration? IPv6 addresses don't show up on arp -an.

How does one computer discover another one over IPv6 within the same prefix?


Neighbor Discovery Protocol (NDP) is the IPv6 equivalent of the Address Resolution Protocol (ARP), and on the Unix flavors I'm most familiar with (mostly BSDs) the ndp(8) command is the IPv6 equivalent of the arp(8) command.

The command-line options for ndp are often the same as for arp, so ndp -an does exactly what you'd expect.

ip -6 neigh show 

Above command is to check arp table for ipv6

  • This should be the accepted answer, as the ndp command provided in the other answer doesn't exist in Linux (at least not in Debian and Red Hat based ones) – Alan Evangelista 7 hours ago

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.