It's probably same in the IPv4, but: What does happen when the response form the box with the same IPv6 address that you wish to use on yours doesn't reach back in time. The time which a host spends on listening and waiting for a reply from group multicast seems quite random(and short).
You could argue and say that it's enough in "networking time" and I'm sure it is, but there can be quite a few complications - let's just cut the wire for a second for example.
Nice video. This video taught me something I did not already know about IPv6, that does not happen often. After watching, I still have one question. How does the switch know which ports a multicast packet needs to be send on? If it sends it on all ports, you don't save much bandwidth.
Thanks for the comments. In a worse case scenario, lets say the frame gets forwarded to all ports in the VLAN. Every device would see the L2 destination address, and if not interested could discard it, without further de-encapsulation.
To your point, regarding bandwidth not being saved, you are right on. To correct that, we could use MLD snooping on the switch, and then only send the frames to the members of the group who had joined.
Well... I'm working on my CCNP studies and finally entering the world of IPv6 for the first time. Oh maaaan lol. It's like learning how devices communicate all over again. It's so different! The multicasts are pretty cool though. IPv4 seems like child's play now haha!
1) when R1 sends a ping to FF02::1 Group, In the IPV6 Packet, The Dest MAC address will be 33:33:00:00:00:01 and the source MAC address will be MAC address of R1. Then why Host A, Host B need to send NS to R1 to know R1's Layer 2 Address?
Great question. The IPv6 neighbor information, which would include L2 mac addresses for those neighbors is populated using Neighbor Discover specifically, and not just by looking at source L2 addresses (which is how a L2 switch would do it). That is why a NS, followed by a NA is done between the clients and the router for the exchange of L2 information.
For a host, learning the source MAC address is different than learning a source IP address of peer. If you sent me a PING in IPv6, from anywhere on the network, I would learn your source IP address from the packet.
I won't learn the L2 address I should use to reply, just from the source packet. IPv6 uses Neighbor Discovery (ND) to populate the IPv6 neighbor table, which includes the L2 address of local devices in the same broadcast domain. ND is used instead of ARP.
When we ping to FF02::1 the dest MAC is 33:33:00:00:00:01. Now Similary when we ping to solicited Multicast node like FF02:1:FFAA:AAAA what is the dest MAC address in the IPV6 Packet.
For the solicited node multicast address, the last 24 bits of the IP address are used as the last 1/2 of the destination MAC address for that solicited node. For other multicast, it uses the last 32 bits of the IP address for the multicast group as the last 32 bits of the destination MAC address for that multicast group.
Finally If R1 wants to know hostA MAC Addr it sends NS using Solicited Node Multicast address, with Dest L2 Addr being equal to 33:33:ff + last 24 bits of that solicited node address.
Now when HostA has to reply back with NA to R1 and HostA doesn't have the L2 Addr of R1 then how it will respond back to R1.What L2 Dest address will HostA use in its reply to R1 as both the hosts are unaware of each other's L2 Address.
In the neighbor solicitation, in as part of the ICMP payload, the requester includes his source MAC address that the other device can use. It is also possible, that the other host could issue it's own neighbor solicitation, even though the original one had the MAC in it.
2) In IPv4 most devices will do a gratuitous ARP (like an ARP response that no one asked for, and is broadcast out to the network), and if anyone sees the ARP info for an IP address that they currently have, they will reply back, and will also generate a message to the console/screen indicating there is a duplicate IP. The host that sourced the gratuitous ARP, upon seeing the response, will also report a duplicate IP.
1) If we do a ping from PC1 to ff02::1, we source the frame from our L2 address, but the only device that cares is the switch. Once all the devices see the request sourced from the PC they realize they don't have the MAC address PC1, and they will all do a NS to ask for it(unless they have it cached). In the NS/NA exchange the devices will learn the specific MAC addresses of PC1, and PC1 will learn all the other devices MAC addresses. cont....
1) When we send a ping to ff02::1 we would be sending our mac address as the source mac address right. why do the hosts need to send the NS messages. In ipv4 we would maintain some kind of ARP cash and this was mapped to the IP address and their mac address. is this not done in ipv6.
2) Did we have something similar to DAD on ipv4. why do we need it as the network administrator has to any how make sure that he configures unique address.
Hey Keith, if all ipv6 addresses are stored in FF02::16 address list, so DAD can work and assure no one has a duplicated address, would it be possible to someone craft a packet to remove a particular address from that list? So he could effectively clone a ipv6 address?
Great question. On a Cisco router, like R1 (even with IPv6 unicast routing disabled), it sends the unsolicited Neighbor Advertisement when it gets a new IPv6 address. I just brought up a Linux client, and when it got an IPv6 address, it didn't send the unsolicited NA to FF02::1. It very well may be just the way the vendor, for a given OS, chose to implement it. The extra NA doesn't seem too critical either way. Thanks for the post, and thanks for watching.
It's probably same in the IPv4, but: What does happen when the response form the box with the same IPv6 address that you wish to use on yours doesn't reach back in time. The time which a host spends on listening and waiting for a reply from group multicast seems quite random(and short).
You could argue and say that it's enough in "networking time" and I'm sure it is, but there can be quite a few complications - let's just cut the wire for a second for example.
viiskendkuuskend 1 month ago
I like your videos Keith but that woosh sound always scares this shit out of me.
HenryHoneyBadger 1 month ago
I can't believe it, I'm finally understanding IPv6.
5xYkz 2 months ago
Nice video. This video taught me something I did not already know about IPv6, that does not happen often. After watching, I still have one question. How does the switch know which ports a multicast packet needs to be send on? If it sends it on all ports, you don't save much bandwidth.
kasperd42 2 months ago
@kasperd42
Thanks for the comments. In a worse case scenario, lets say the frame gets forwarded to all ports in the VLAN. Every device would see the L2 destination address, and if not interested could discard it, without further de-encapsulation.
To your point, regarding bandwidth not being saved, you are right on. To correct that, we could use MLD snooping on the switch, and then only send the frames to the members of the group who had joined.
Best wishes,
Keith
Keith6783 2 months ago
Well... I'm working on my CCNP studies and finally entering the world of IPv6 for the first time. Oh maaaan lol. It's like learning how devices communicate all over again. It's so different! The multicasts are pretty cool though. IPv4 seems like child's play now haha!
ThePaperboy9 2 months ago
Hi Keith,
1) when R1 sends a ping to FF02::1 Group, In the IPV6 Packet, The Dest MAC address will be 33:33:00:00:00:01 and the source MAC address will be MAC address of R1. Then why Host A, Host B need to send NS to R1 to know R1's Layer 2 Address?
Yugandhar635 3 months ago
@Yugandhar635
Great question. The IPv6 neighbor information, which would include L2 mac addresses for those neighbors is populated using Neighbor Discover specifically, and not just by looking at source L2 addresses (which is how a L2 switch would do it). That is why a NS, followed by a NA is done between the clients and the router for the exchange of L2 information.
Best wishes,
Keith
Keith6783 3 months ago
Hi Keith,
I could not understand that If HostA knows the MAC address of R1, why does HostA need to do NS ?
I tried with a point to point Ping ff02::1 between two nodes. I could not see any NS exchange between these two devices.
Could please explain it bit clearly? Thanks
HKS
hrisikeshsahu 3 months ago
@Yugandhar635
For a host, learning the source MAC address is different than learning a source IP address of peer. If you sent me a PING in IPv6, from anywhere on the network, I would learn your source IP address from the packet.
I won't learn the L2 address I should use to reply, just from the source packet. IPv6 uses Neighbor Discovery (ND) to populate the IPv6 neighbor table, which includes the L2 address of local devices in the same broadcast domain. ND is used instead of ARP.
Keith6783 3 months ago
@Keith6783
When we ping to FF02::1 the dest MAC is 33:33:00:00:00:01. Now Similary when we ping to solicited Multicast node like FF02:1:FFAA:AAAA what is the dest MAC address in the IPV6 Packet.
Yugandhar635 3 months ago
@Yugandhar635
For the solicited node multicast address, the last 24 bits of the IP address are used as the last 1/2 of the destination MAC address for that solicited node. For other multicast, it uses the last 32 bits of the IP address for the multicast group as the last 32 bits of the destination MAC address for that multicast group.
Thanks for the post!
Keith
Keith6783 3 months ago
@Keith6783
Thanks for your reply.
Finally If R1 wants to know hostA MAC Addr it sends NS using Solicited Node Multicast address, with Dest L2 Addr being equal to 33:33:ff + last 24 bits of that solicited node address.
Now when HostA has to reply back with NA to R1 and HostA doesn't have the L2 Addr of R1 then how it will respond back to R1.What L2 Dest address will HostA use in its reply to R1 as both the hosts are unaware of each other's L2 Address.
Yugandhar635 3 months ago
@Yugandhar635
In the neighbor solicitation, in as part of the ICMP payload, the requester includes his source MAC address that the other device can use. It is also possible, that the other host could issue it's own neighbor solicitation, even though the original one had the MAC in it.
Keith
Keith6783 3 months ago
@kohir2
2) In IPv4 most devices will do a gratuitous ARP (like an ARP response that no one asked for, and is broadcast out to the network), and if anyone sees the ARP info for an IP address that they currently have, they will reply back, and will also generate a message to the console/screen indicating there is a duplicate IP. The host that sourced the gratuitous ARP, upon seeing the response, will also report a duplicate IP.
Thanks,
Keith
Keith6783 4 months ago
@Keith6783
Thanks a lot Keith for the clarification..
kohir2 4 months ago
@kohir2
1) If we do a ping from PC1 to ff02::1, we source the frame from our L2 address, but the only device that cares is the switch. Once all the devices see the request sourced from the PC they realize they don't have the MAC address PC1, and they will all do a NS to ask for it(unless they have it cached). In the NS/NA exchange the devices will learn the specific MAC addresses of PC1, and PC1 will learn all the other devices MAC addresses. cont....
Keith6783 4 months ago
Great Video Keith.
I have couple of questions:
1) When we send a ping to ff02::1 we would be sending our mac address as the source mac address right. why do the hosts need to send the NS messages. In ipv4 we would maintain some kind of ARP cash and this was mapped to the IP address and their mac address. is this not done in ipv6.
2) Did we have something similar to DAD on ipv4. why do we need it as the network administrator has to any how make sure that he configures unique address.
kohir2 4 months ago
Great video! Really helpful for CCNP Route. Thanks, Keith.
alchung4 4 months ago in playlist IPv6
Excellent Keith
cnmendonca 5 months ago
Hey Keith, if all ipv6 addresses are stored in FF02::16 address list, so DAD can work and assure no one has a duplicated address, would it be possible to someone craft a packet to remove a particular address from that list? So he could effectively clone a ipv6 address?
CommanderBR 6 months ago
Thanks for posting. Look forward to the next in this series.
cisk0skid 6 months ago
When I add an IPv6 addr, I do not see Nbr Adv message sent out to the multcast group. Does this depend on any kernel setting?
mdashid 6 months ago
@mdashid
Great question. On a Cisco router, like R1 (even with IPv6 unicast routing disabled), it sends the unsolicited Neighbor Advertisement when it gets a new IPv6 address. I just brought up a Linux client, and when it got an IPv6 address, it didn't send the unsolicited NA to FF02::1. It very well may be just the way the vendor, for a given OS, chose to implement it. The extra NA doesn't seem too critical either way. Thanks for the post, and thanks for watching.
Keith
Keith6783 6 months ago
great
sonic003573 6 months ago