< Home

Example for Configuring Basic IPv6 PIM-DM Functions

Networking Requirements

Figure 1 shows a small-scale network with densely distributed users. HostA and HostB need to receive multicast data from Source.

In this scenario, to avoid loops, ensure that all connected interfaces have STP disabled and connected interfaces are removed from VLAN 1. If STP is enabled and VLANIF interfaces of switches are used to construct a Layer 3 ring network, an interface on the network will be blocked. As a result, Layer 3 services on the network cannot run normally.

Figure 1 Configuring basic IPv6 PIM-DM functions

Switch

VLANIF Interface

IPv6 Address

SwitchA VLANIF10 FC00:0:0:2005::1/64
VLANIF20 FC00:0:0:3001::1/64
VLANIF30 FC00:0:0:2001::1/64
SwitchB VLANIF40 FC00:0:0:4001::1/64
VLANIF70 FC00:0:0:2002::1/64
SwitchC VLANIF40 FC00:0:0:4001::2/64
VLANIF50 FC00:0:0:2003::1/64
SwitchD VLANIF30 FC00:0:0:2001::2/64
VLANIF60 FC00:0:0:2004::1/64
VLANIF80 FC00:0:0:5001::1/64
SwitchE VLANIF10 FC00:0:0:2005::2/64
VLANIF50 FC00:0:0:2003::2/64
VLANIF60 FC00:0:0:2004::2/64
VLANIF70 FC00:0:0:2002::2/64

Configuration Roadmap

Since users are densely distributed on the network, IPv6 PIM-DM can be deployed on the network to provide multicast services for the user hosts. After IPv6 PIM-DM is configured on the network, all user hosts in a multicast group can receive multicast data sent from the multicast source to the group.

  1. Configure IPv6 addresses for interfaces and configure an IPv6 unicast routing protocol on each switch. IPv6 PIM is an intra-domain multicast routing protocol that depends on an IPv6 unicast routing protocol. The IPv6 multicast routing protocol can work normally only when the IPv6 unicast routing protocol works normally.

  2. Enable IPv6 multicast routing on all the switches providing multicast services. IPv6 multicast routing is the prerequisite for IPv6 PIM-DM configuration.

  3. Enable IPv6 PIM-DM on all switch interfaces. Other IPv6 PIM-DM functions can be configured only after IPv6 PIM-DM is enabled.

  4. Enable Multicast Listener Discovery (MLD) on the interfaces connected to user network segments. The MLD protocol maintains group memberships. The leaf switches maintain group memberships using MLD.

    If IPv6 PIM-DM and MLD need to be enabled on the same user-side interface, enable IPv6 PIM-DM and then MLD.

Procedure

  1. Configure IPv6 addresses for interfaces and configure an IPv6 unicast routing protocol on each switch.

    # Configure IPv6 addresses and masks for switch interfaces. Configure Open Shortest Path First version 3 (OSPFv3) on the switches to implement IPv6 interworking between the switches and enable the switches to dynamically update routes. (The configurations of the other switches are similar to the configuration of SwitchA.)

    [SwitchA] ipv6
    [SwitchA] ospfv3 100
    [SwitchA-ospfv3-100] router-id 1.1.1.1
    [SwitchA-ospfv3-100] quit
    [SwitchA] vlan batch 10 20 30
    [SwitchA] interface vlanif 10
    [SwitchA-Vlanif10] ipv6 enable
    [SwitchA-Vlanif10] ipv6 address fc00:0:0:2005::1 64
    [SwitchA-Vlanif10] ospfv3 100 area 0
    [SwitchA-Vlanif10] quit
    [SwitchA] interface vlanif 20
    [SwitchA-Vlanif20] ipv6 enable
    [SwitchA-Vlanif20] ipv6 address fc00:0:0:3001::1 64
    [SwitchA-Vlanif20] ospfv3 100 area 0
    [SwitchA-Vlanif20] quit
    [SwitchA] interface vlanif 30
    [SwitchA-Vlanif30] ipv6 enable
    [SwitchA-Vlanif30] ipv6 address fc00:0:0:2001::1 64
    [SwitchA-Vlanif30] ospfv3 100 area 0
    [SwitchA-Vlanif30] quit
    [SwitchA] interface gigabitethernet0/0/1
    [SwitchA-GigabitEthernet0/0/1] port link-type trunk
    [SwitchA-GigabitEthernet0/0/1] port trunk allow-pass vlan 10
    [SwitchA-GigabitEthernet0/0/1] quit
    [SwitchA] interface gigabitethernet0/0/2
    [SwitchA-GigabitEthernet0/0/2] port link-type hybrid
    [SwitchA-GigabitEthernet0/0/2] port hybrid untagged vlan 20
    [SwitchA-GigabitEthernet0/0/2] port hybrid pvid vlan 20
    [SwitchA-GigabitEthernet0/0/2] quit
    [SwitchA] interface gigabitethernet0/0/3
    [SwitchA-GigabitEthernet0/0/3] port link-type trunk
    [SwitchA-GigabitEthernet0/0/3] port trunk allow-pass vlan 30
    [SwitchA-GigabitEthernet0/0/3] quit

  2. Enable IPv6 multicast routing on all the switches and enable IPv6 PIM-DM on all interfaces.

    # Enable IPv6 multicast routing on all the switches and enable IPv6 PIM-DM on all interfaces. (The configurations of the other switches are similar to the configuration of SwitchA.)

    [SwitchA] multicast ipv6 routing-enable
    [SwitchA] interface vlanif 10
    [SwitchA-Vlanif10] pim ipv6 dm
    [SwitchA-Vlanif10] quit
    [SwitchA] interface vlanif 20
    [SwitchA-Vlanif20] pim ipv6 dm
    [SwitchA-Vlanif20] quit
    [SwitchA] interface vlanif 30
    [SwitchA-Vlanif30] pim ipv6 dm
    [SwitchA-Vlanif30] quit

  3. Enable MLD on the interfaces connected to user hosts.

    # Enable MLD on the user-side interface (VLANIF20) of SwitchA. (The configurations of SwitchB and SwitchC are similar to the configuration of SwitchA.)

    [SwitchA] interface vlanif 20
    [SwitchA-Vlanif20] mld enable
    [SwitchA-Vlanif20] quit

  4. Verify the configuration.

    # Run the display pim ipv6 interface command to check the IPv6 PIM configuration and running status on switch interfaces. The following is the command output on SwitchC, indicating that IPv6 PIM is running on the interfaces.

    <SwitchC> display pim ipv6 interface
    VPN-Instance: public net
    Interface      State   NbrCnt   HelloInt   DR-Pri     DR-Address
    Vlanif40        up      1         30         1         FE80::25C:FF:F205:32(local)
    Vlanif50        up      1         30         1         FE80::10B:FF:F301:22(local)

    # Run the display pim ipv6 routing-table command to check the IPv6 PIM routing tables on the switches. You can see from the IPv6 PIM routing tables that multicast source (FC00:0:0:5001::100/64) to group (FF0E::1/64), and HostA and HostB have joined group (FF0E::1/64). The IPv6 PIM routing tables of the switches are as follows:

    [SwitchA] display pim ipv6 routing-table
    VPN-Instance: public net
    
     Total 1 (*, G) entry; 1 (S, G) entry
     
     (*, FF0E::1)
         Protocol: pim-dm, Flag: ACT
         UpTime: 00:00:29
         Upstream interface: NULL
             Upstream neighbor: NULL
             RPF prime neighbor: NULL
        Downstream interface(s) information:
         Total number of downstreams: 1
             1: Vlanif20
                 Protocol: mld, UpTime: 00:00:29, Expires:-
    
     (FC00:0:0:5001::100, FF0E::1)
         Protocol: pim-dm, Flag: ACT
         UpTime: 00:00:29
         Upstream interface: Vlanif30
             Upstream neighbor: FE80::4E1F:CCFF:FE64:A1A0
             RPF prime neighbor: FE80::4E1F:CCFF:FE64:A1A0
        Downstream interface(s) information:
         Total number of downstreams: 1
             1: Vlanif20
                 Protocol: pim-dm, UpTime: 00:00:29, Expires:-
    [SwitchB] display pim ipv6 routing-table
    VPN-Instance: public net
     Total 1 (*, G) entry; 1 (S, G) entry
     
     (*, FF0E::1)
         Protocol: pim-dm, Flag: WC
         UpTime: 00:00:29
         Upstream interface: NULL
             Upstream neighbor: NULL
             RPF prime neighbor: NULL
        Downstream interface(s) information:
         Total number of downstreams: 1
             1: Vlanif40
                 Protocol: mld, UpTime: 00:00:30, Expires: never
    
     (FC00:0:0:5001::100, FF0E::1)
         Protocol: pim-dm, Flag: ACT
         UpTime: 00:00:29
         Upstream interface: Vlanif70
             Upstream neighbor: FE80::225:9EFF:FEFB:494A
             RPF prime neighbor: FE80::225:9EFF:FEFB:494A
        Downstream interface(s) information:
         Total number of downstreams: 1
             1: Vlanif40
                 Protocol: pim-dm, UpTime: 00:00:30, Expires:-
    
    [SwitchC] display pim ipv6 routing-table
     VPN-Instance: public net
     Total 0 (*, G) entry; 1 (S, G) entry
    
     (*, FF0E::1)
         Protocol: pim-dm, Flag: WC
         UpTime: 00:01:25
         Upstream interface: NULL
             Upstream neighbor: NULL
             RPF prime neighbor: NULL
         Downstream interface(s) information:
         Total number of downstreams: 1
             1: Vlanif40
                 Protocol: mld, UpTime: 00:01:25, Expires: never
    
     (FC00:0:0:5001::100, FF0E::1)
         Protocol: pim-dm, Flag: ACT
         UpTime: 00:01:25
         Upstream interface: Vlanif50
             Upstream neighbor: FE80::225:9EFF:FEFB:494A
             RPF prime neighbor: FE80::225:9EFF:FEFB:494A
         Downstream interface(s) information:
         Total number of downstreams: 1
             1: Vlanif40
                 Protocol: pim-dm, UpTime: 00:01:25, Expires:-
    
    [SwitchD] display pim ipv6 routing-table
    VPN-Instance: public net
     Total 0 (*, G) entry; 1 (S, G) entry
     
     (FC00:0:0:5001::100, FF0E::1)
         Protocol: pim-dm, Flag: LOC ACT
         UpTime: 00:00:29
         Upstream interface: Vlanif80
             Upstream neighbor: NULL
             RPF prime neighbor: NULL
         Downstream interface(s) information:
         Total number of downstreams: 2
             1: Vlanif30
                 Protocol: pim-dm, UpTime: 00:00:27, Expires: never
             2: Vlanif60
                 Protocol: pim-dm, UpTime: 00:00:29, Expires: never
    
    [SwitchE] display pim ipv6 routing-table
    VPN-Instance: public net
     Total 0 (*, G) entry; 1 (S, G) entry
     
     (FC00:0:0:5001::100, FF0E::1)
         Protocol: pim-dm, Flag: ACT
         UpTime: 00:01:22
         Upstream interface: Vlanif60
             Upstream neighbor: FE80::4E1F:CCFF:FE64:A1A0
             RPF prime neighbor: FE80::4E1F:CCFF:FE64:A1A0
         Downstream interface(s) information:
         Total number of downstreams: 1
             1: Vlanif70
                 Protocol: pim-dm, UpTime: 00:01:22, Expires: never
    

Configuration Files

  • SwitchA configuration file

    #
     sysname SwitchA
    #
    ipv6
    #
    vlan batch 10 20 30
    #
    multicast ipv6 routing-enable
    #
    ospfv3 100
     router-id 1.1.1.1
    #
    interface Vlanif10
     ipv6 enable
     ipv6 address FC00:0:0:2005::1/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
    #
    interface Vlanif20
     ipv6 enable
     ipv6 address FC00:0:0:3001::1/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
     mld enable
    #
    interface Vlanif30
     ipv6 enable
     ipv6 address FC00:0:0:2001::1/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
    #
    interface GigabitEthernet0/0/1
     port link-type trunk
     port trunk allow-pass vlan 10
    #
    interface GigabitEthernet0/0/2
     port link-type hybrid
     port hybrid pvid vlan 20
     port hybrid untagged vlan 20
    #
    interface GigabitEthernet0/0/3
     port link-type trunk
     port trunk allow-pass vlan 30
    #
    return
  • SwitchB configuration file

    #
     sysname SwitchB
    #
    ipv6
    #
    vlan batch 40 70
    #
    ospfv3 100
     router-id 2.2.2.2
    #
    multicast ipv6 routing-enable
    #
    interface Vlanif40
     ipv6 enable
     ipv6 address FC00:0:0:4001::1/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
     mld enable
    #
    interface Vlanif70
     ipv6 enable
     ipv6 address FC00:0:0:2002::1/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
    #
    interface GigabitEthernet0/0/1
     port link-type trunk
     port trunk allow-pass vlan 70
    #
    interface GigabitEthernet0/0/2
     port link-type hybrid
     port hybrid pvid vlan 40
     port hybrid untagged vlan 40
    #
    return
  • SwitchC configuration file

    #
     sysname SwitchC
    #
    ipv6
    #
    vlan batch 40 50
    #
    multicast ipv6 routing-enable
    #
    ospfv3 100
     router-id 3.3.3.3
    #
    interface Vlanif40
     ipv6 enable
     ipv6 address FC00:0:0:4001::2/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
     mld enable
    #
    interface Vlanif50
     ipv6 enable
     ipv6 address FC00:0:0:2003::1/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
    #
    interface GigabitEthernet0/0/1
     port link-type hybrid
     port hybrid pvid vlan 40
     port hybrid untagged vlan 40
    #
    interface GigabitEthernet0/0/2
     port link-type trunk
     port trunk allow-pass vlan 50
    #
    return
  • SwitchD configuration file

    #
     sysname SwitchD
    #
    ipv6
    #
    vlan batch 30 60 80
    #
    multicast ipv6 routing-enable
    #
    ospfv3 100
     router-id 4.4.4.4
    #
    interface Vlanif30
     ipv6 enable
     ipv6 address FC00:0:0:2001::2/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
    #
    interface Vlanif60
     ipv6 enable
     ipv6 address FC00:0:0:2004::1/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
    #
    interface Vlanif80
     ipv6 enable
     ipv6 address FC00:0:0:5001::1/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
    #
    interface GigabitEthernet0/0/1
     port link-type hybrid
     port hybrid pvid vlan 80
     port hybrid untagged vlan 80
    #
    interface GigabitEthernet0/0/3
     port link-type trunk
     port trunk allow-pass vlan 30
    #
    interface GigabitEthernet0/0/4
     port link-type trunk
     port trunk allow-pass vlan 40
    #
    return
  • SwitchE configuration file

    #
     sysname SwitchE
    #
    ipv6
    #
    vlan batch 10 50 60 70
    #
    multicast ipv6 routing-enable
    #
    ospfv3 100
     router-id 5.5.5.5
    #
    interface Vlanif10
     ipv6 enable
     ipv6 address FC00:0:0:2005::2/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
    #
    interface Vlanif50
     ipv6 enable
     ipv6 address FC00:0:0:2003::2/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
    #
    interface Vlanif60
     ipv6 enable
     ipv6 address FC00:0:0:2004::2/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
    #
    interface Vlanif70
     ipv6 enable
     ipv6 address FC00:0:0:2002::2/64
     ospfv3 100 area 0.0.0.0
     pim ipv6 dm
    #
    interface GigabitEthernet0/0/1
     port link-type trunk
     port trunk allow-pass vlan 10
    #
    interface GigabitEthernet0/0/2
     port link-type trunk
     port trunk allow-pass vlan 50
    #
    interface GigabitEthernet0/0/3
     port link-type trunk
     port trunk allow-pass vlan 70
    #
    interface GigabitEthernet0/0/4
     port link-type trunk
     port trunk allow-pass vlan 60
    #
    return
Copyright © Huawei Technologies Co., Ltd.
Copyright © Huawei Technologies Co., Ltd.
Next topic >