IPv6


IPv6 multicast renames IGMP to the Multicast Listener Discovery Protocol (MLP). Version 1 of MLD is similar to IGMP Version 2, while Version 2 of MLD is similar to Version 3 IGMP. As such, MLD Version 2 Source Specific Multicast (SSM) for IPv6 environments.

Using MLD, hosts can indicate they want to receive multicast transmissions for select groups. Routers (queriers) can control the flow of multicast in the network through the use of MLD.

MLD uses the Internet Control Message Protocol (ICMP) to carry its messages. All such messages are link-local in scope, and they all have the router alert option set.

MLD uses three types of messages – Query, Report, and Done. The Done message is like the Leave message in IGMP version 2. It indicates a host no longer wants to receive the multicast transmission. This triggers a Query to check for any more receivers on the segment.

Configuration options for MLD will be very similar to configuration tasks we needed to master for IGMP. You can limit the number of receivers with the ipv6 mld limit command. If you want the interface to “permanently” subscribe, you can use the ipv6 mld join-group command. Also, like in IGMP, there are several timers you may manipulate for the protocol’s mechanics.

Configuring IPv6 multicast-routing with the global configuration command ipv6 multicast-routing, automatically configures Protocol Independent Multicast (PIM) an all active interfaces. This also includes the automatic configuration of MLD. Here are verifications:

R0#show ipv6 pim interface
Interface          PIM  Nbr   Hello  DR
 Count Intvl  Prior

Tunnel0            off  0     30     1     
 Address: FE80::C000:2FF:FE97:0
 DR     : not elected
VoIP-Null0         off  0     30     1     
 Address: ::
 DR     : not elected
FastEthernet0/0    on   0     30     1     
 Address: FE80::C000:2FF:FE97:0
 DR     : this system
FastEthernet0/1    off  0     30     1     
 Address: ::
 DR     : not elected

Notice the PIM is indeed enabled on the Fa0/0 we have configured in this scenario. Now for the verification of MLD:

R0#show ipv6 mld interface
Tunnel0 is up, line protocol is up
 Internet address is FE80::C000:2FF:FE97:0/10
 MLD is disabled on interface
VoIP-Null0 is up, line protocol is up
 Internet address is ::/0
 MLD is disabled on interface
FastEthernet0/0 is up, line protocol is up
 Internet address is FE80::C000:2FF:FE97:0/10
 MLD is enabled on interface
 Current MLD version is 2
 MLD query interval is 125 seconds
 MLD querier timeout is 255 seconds
 MLD max query response time is 10 seconds
 Last member query response interval is 1 seconds
 MLD activity: 5 joins, 0 leaves
 MLD querying router is FE80::C000:2FF:FE97:0 (this system)
FastEthernet0/1 is administratively down, line protocol is down
 Internet address is ::/0
 MLD is disabled on interface

Remember that IPv6 is composed of 128 bits. This is commonly expressed by 16′s in 8 groups (8 * 16 = 128).
Example IPv6 address: FEC0:0:0:A:125:23FF:FEE2:1F53 (count the “:” it is a group by 8)

Summarization Tidbits:

Example:

Summarize the following addresses:
FEC0:0:0:A:125:23FF:FEE2:1F53 and
FEC0:0:0:E:10A:9FFF:FED7:D3

0000 0000 0000 1010 – A
0000 0000 0000 1110 – E
0000 0000 0000 1000 – 8 – common mask

FEC0 + 0 + 0 = 48 bit position
16 + 16 + 16 = 48,

+ (12 zeros common between A and E, as per above)
48 + 12 = 60

+ (1 bit for the 8 – common mask)
60 + 1 = 61  <—total bit position, this is your MASK.

Answer: FEC0:0:0:8::/61

Gets?

Today, I tried to configure my borrowed only home router (Cisco 1841) to connect to the IPV6 world.

I used  Hurricane Electric’s as my IPV6 to IPV4 broker (6to4), basically I established an IPv6 tunnel from my dsl connection at home connected to a Cisco router to Hurricane Electric’s server.

My router now is able to reached the IPv6 world. Next thing to do is to enable my home PC to be IPv6 capable and I should be able to reach www.kame.net with the dancing turtle and www.apnic.net with my source IP address as IPV6. See my running config below. You can ping me at 2001:470:1F06:4C8::2 hostname mar.tunnel.tserv4.nyc4.ipv6.he.net .

R1-PakWai#sh run int tunnel 0
Building configuration…

Current configuration : 231 bytes
!
interface Tunnel0
 description My Link to Hurricane Electric IPv6 Tunnel Broker
 no ip address
 ipv6 address 2001:470:1F06:4C8::2/64
 ipv6 enable
 tunnel source 219.79.190.x
 tunnel destination 209.51.161.14
 tunnel mode ipv6ip
end

R1-PakWai#ping www.apnic.net

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:DC0:2001:0:4608:20::, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 552/628/768 ms
R1-PakWai#ping www.kame.net

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:200:0:8002:203:47FF:FEA5:3085, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 432/432/432 ms
R1-PakWai#sh clo
*17:22:37.523 UTC Mon Jun 23 2008
R1-PakWai#

Server IPv4 address: 209.51.161.14
Server IPv6 address: 2001:470:1f06:4c8::1/64
Client IPv4 address: [Update] 219.79.190.x
Client IPv6 address: 2001:470:1f06:4c8::2/64
Routed /48: none
Routed /64: 2001:470:1f07:4c8::/64

Verification:

************************** route-server.he.net **************************

route-server.he.net>ping 2001:470:1F06:4C8::2

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 2001:470:1F06:4C8::2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 328/328/328 ms
route-server.he.net>traceroute 2001:470:1F06:4C8::2

Type escape sequence to abort.
Tracing the route to 2001:470:1F06:4C8::2

  1 2001:470:1FFF:3::2 4 msec 0 msec 0 msec
  2 2001:470:0:1F::1 4 msec 0 msec 0 msec
  3 2001:470:0:2F::2 0 msec 0 msec 4 msec
  4 2001:470:0:33::2 84 msec 80 msec 88 msec
  5 2001:470:0:5D::2 84 msec 84 msec 80 msec
  6 2001:470:1F06:4C8::2 328 msec 328 msec 328 msec
route-server.he.net>sh clo
10:40:04.226 pst Mon Jun 23 2008
route-server.he.net>