ipv4 arp versus ipv6 neighbor discovery

Experts,

May be you can educate me on ipv4 arp versus ipv6 neighbor discovery. In ipv4 world, when you ping a device (and it is not in the arp cache, it will broadcast it to all devices on the same VLAN. Now, with ipv6, ther is no arp, so it will use the ND mechanism with multicast. So let say I have 4 devices on my VLAN. One of the device is looking for a MAC address (through the ping mechanism). So if there is no broadcast, how does it reach other devices on the VLAN?
Thanks
LVL 1
leblancAccountingAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Rich WeisslerProfessional Troublemaker^h^h^h^h^hshooterCommented:
I think you have all the pieces in the question.  Instead of an actual broadcast, the destination of the ND (Neighbor Solicitation in this case) would be the Solicited-Node address.
0
nociSoftware EngineerCommented:
You already said it: multicast
Multicast looks like broadcast. All multicast packets goto all network adapters on the same network.

Here is a youtube movie
https://www.youtube.com/watch?v=6rXn7dcj4xA

Here is the RFC:
http://tools.ietf.org/html/rfc4861

Cisco's explanation.
http://www.cisco.com/en/US/docs/ios-xml/ios/ipv6/configuration/15-2mt/ip6-neighb-disc.html#GUID-A09BEBD3-2E2B-464A-89C2-025BD6D7660D

Basically it works still a lot like ARP, but it is formalized as an ICMP protocol.
0
AkinsdNetwork AdministratorCommented:
The same question bugged me when ipv6 evolved and found that there was no broadcast. I totally understand where you're coming from. This is  what cleared the whole thing up.

The major difference between multicast traffic and broadcast is you have control on multicast to predetermine who gets the signal. Broadcast just lays it out there - free for all, open invitation.

They both operate on the same concept though - sending a single message to multiple recipients.

Another way of looking at it is
Broadcast - sending multiple invitations each time you need to communicate
Multicast - posting a single message on a bulletin board where predetermined users check in to get information
0
Powerful Yet Easy-to-Use Network Monitoring

Identify excessive bandwidth utilization or unexpected application traffic with SolarWinds Bandwidth Analyzer Pack.

nociSoftware EngineerCommented:
Yes and in IPv6 multicast & broadcast are not an afterthought but something that is embedded in the design.
0
leblancAccountingAuthor Commented:
Thanks for the explanation.

I understand that with multicast, you can control who gets the message. But back to my example with 4 devices on the same vlan. When a device wants to discover another device on the vlan, the multicast packet is automatically sent to all nodes on the vlan. Correct? If yes then it is the same as broadcast. So why don't we just use broadcast. What is the reason to have multicast here, other than it is embedded with icmpv6.

With multicast, you can control who gets the message. I can see that with video streaming. But I don't see it in ND. Any thoughts?
0
AkinsdNetwork AdministratorCommented:
I think you missed my comment earlier. See comment below.

Another way of looking at it is
Broadcast - sending multiple invitations each time you need to communicate
Multicast - posting a single message on a bulletin board where predetermined users check in to get information

Broadcast consumes more bandwidth than multicast.
Imagine sending 1000 letters out to 1000 people compared to posting the content of the letter on a bulletin board for 1000 people to come and see.

Please research a little more about multicast to understand the concept and benefits

Hope this helps
0
nociSoftware EngineerCommented:
multicast / broadcast ...

both send one frame to be received my MANY users.
With broadcast you dont give any info with the address....
L2:
(like ff:ff:ff:ff:ff:ff as a MAC address, the defined broadcast address) no way to identify/filter.
But any address that has an odd first byte will be sent everywhere [ within the broadcast domain of L2 ].  You can create a broadcast address by taking your own address and add 1 to the first byte of the MAC address.

L3:
 255.255.255.255 - every computer on the internet... probably not what you want, so routers block that use...
Multicast has an address for a FUNCTION not a target system. That is the main difference.
You don't control who receives the data, everybody does. But receipients might distingish useful from useless packets....
So only routers will pickup on RIP distributed routing tables f.e.

IPv6 Address explained:
http://en.wikipedia.org/wiki/IPv6_address

Multicast explained:
http://en.wikipedia.org/wiki/Multicast_address
0
leblancAccountingAuthor Commented:
I understand the concept of broadcast (one to everybody) & multicast (one to a specific group). But I am still not sure that I understand the ND process.
In IPv4 world, when I ping (looking for an IP address), I send ARP to everybody.
In ipv6 world, in the initial state, hosts on the same LAN doe not know about each other. Correct? So, when I ping ((looking for an IP address). what happens?
0
nociSoftware EngineerCommented:
Did you actually look at the Youtube movie and other references i sent in my first answer? The youtube movie is part of an presentation with oal explanation what happens.

ARP (Rq & Answer) has been replaced by ICMPv6 Neighbour Solicitation & Neighbour Advertisement.
Routers send ICMPv6 Router Advertisements. Then ICMPv6 NS & NA are also used to generate the link local addresses, if you still have none ].
You can request any address using NS & NA the NA always contains the address for the next HOP for the requested address.
ARP in IPv4 is only sent for addresses that fit within the own network, otherwise the arp is sent for a fitting gateway address. [ ultimate ly the default gateway ]
In IPv6 a router can just answer with it's own address if it knows how to reach a destination.
0
leblancAccountingAuthor Commented:
I did watch the youtube link. with Spirent.com. In the video at 3:16, once DAD is cleared, Host A sends a multicast message to all  host. So if I have 4 hosts on my LAN, all 4 of them will receive that multicast packet with icmp type 135. Correct? If yes then this really still has the ARP mechanism.
0
nociSoftware EngineerCommented:
Yes. It basically is the ARP mechanism.
The difference with IPv4 is that in the original IPv4 there was no multicast.
and a special protocol was created to do address resolution for the Ethernet (minority) environment.  (IPv4 stems from 1974..., ethernet from 1978 'ish).
The link local stuff (APIPA) from IPv4 is from the 1990's

Now manycast networks are standard, multicast  is very functional and well supported in switches. IPv6 is designed & built with with all this taken into account.
So a clean address resolution is embedded where it belongs. Not added as an afterthought.
0
leblancAccountingAuthor Commented:
This link answers my question, http://www.youtube.com/watch?v=O1JMdjnn0ao.
What I was missing is the multicast join group. With IPv6, when you do a ping to an IP address, the device that joins that multicast group will reply to the ping with a unicast packet.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
nociSoftware EngineerCommented:
Ok, now it makes sense what you meant....
I assumed that was common knowledge about joining a mc. group.
(which by the way is marking in the kernel that it should process those packets as well).

btw, this is a better movie as it explanains more aspects of this issue like generating dynamic unique addresses.
0
leblancAccountingAuthor Commented:
Definitely.
0
AkinsdNetwork AdministratorCommented:
Noci just spoke my mind too.
A device must have joined (or configured as a member of a) multicast group to receive multicast messages.
0
leblancAccountingAuthor Commented:
The link that I provided is what I was looking for.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Network Analysis

From novice to tech pro — start learning today.