Example for Configuring Dual-Device IGMP Snooping Hot Backup
This section provides an example for configuring dual-device IGMP snooping hot backup in a master/backup E-Trunk scenario. After dual-device IGMP snooping hot backup is configured, multicast services are not interrupted during a master/backup E-Trunk switchover.
Networking Requirements
On the network shown in Figure 8-4, configure an E-Trunk on Device A and Device B. Device A is the master device, and Device B is the backup device. In normal situations, the link between Device A and Device C is up, and the link between Device B and Device C is down. Device C sends packets to Device A through the link in the up state to establish IGMP snooping entries. After receiving the packets, Device A backs up the packets to Device B through the RBS channel.
If Device A or the link between Device A and Device C fails, a master/backup E-Trunk switchover is performed and the link between Device B and Device C goes up. Device C sends packets to Device B through the link in the up state, ensuring IGMP snooping service continuity.
To ensure that IGMP snooping services are not interrupted during a master/backup E-Trunk switchover, configure dual-device IGMP snooping hot backup on Device A and Device B. After the configuration is complete, Device B synchronizes IGMP snooping entries from Device A in real time.
Configuration Roadmap
The configuration roadmap is as follows:
Assign IP addresses to loopback interfaces on the master and backup devices, and configure a routing protocol.
Configure an E-Trunk on Device A and Device B.
Establish a dual-device backup platform on Device A and Device B.
Create BFD sessions and bind them to E-Trunk on Device A and Device B.
Enable remote backup for IGMP snooping services on Device A and Device B.
Data Preparation
To complete the configuration, you need the following data:
Eth-Trunk ID on Device A, Device B, and Device C: 1
E-Trunk ID on Device A and Device B: 1
Device A's loopback1 interface IP address is: 1.1.1.1/32; Device B's loopback1 interface IP address: 2.2.2.2/32; TCP port number: 1025
Device A's IP address: 10.0.0.1/24; Device B's IP address: 10.0.0.2/24.
RBS name: service1; RBP name: profile1; backup ID: 10
Procedure
- Assign an IP address to each interface and configure OSPF on Device A and Device B. For configuration details, see Configuration Files in this section.
- Add an Ethernet interface to Eth-Trunk 1, and add Eth-Trunk 1 to E-Trunk 1 on Device A and Device B. For configuration details, see Configuration Files in this section.
- Add the interfaces for connecting Device C to Device A and Device B to Eth-Trunk 1. For configuration details, see Configuration Files in this section.
- Configure an RBS.# Configure an RBS on Device A.
<HUAWEI> system-view
[~HUAWEI] sysname DeviceA
[*DeviceA] remote-backup-service service1
[*DeviceA-rm-backup-srv-service1] peer 2.2.2.2 source 1.1.1.1 port 1025
[*DeviceA-rm-backup-srv-service1] commit
[~DeviceA-rm-backup-srv-service1] quit
# Configure an RBS on Device B.<HUAWEI> system-view
[~HUAWEI] sysname DeviceB
[*DeviceB] remote-backup-service service1
[*DeviceB-rm-backup-srv-service1] peer 1.1.1.1 source 2.2.2.2 port 1025
[*DeviceB-rm-backup-srv-service1] commit
[~DeviceB-rm-backup-srv-service1] quit
- Configure an RBP.# Configure an RBP on Device A.
[~DeviceA] remote-backup-profile profile1
[*DeviceA-rm-backup-prf-profile1] backup-id 10 remote-backup-service service1
[*DeviceA-rm-backup-prf-profile1] commit
[~DeviceA-rm-backup-prf-profile1] quit
# Configure an RBP on Device B.[~DeviceB] remote-backup-profile profile1
[*DeviceB-rm-backup-prf-profile1] backup-id 10 remote-backup-service service1
[*DeviceB-rm-backup-prf-profile1] commit
[~DeviceB-rm-backup-prf-profile1] quit
- Configure a dual-device E-Trunk backup platform.
# Configure a dual-device E-Trunk 1 backup platform on Device A.
- # Configure E-Trunk 1 on Device A.
[~DeviceA] e-trunk 1
[*DeviceA-e-trunk-1] peer-address 2.2.2.2 source-address 1.1.1.1
[*DeviceA-e-trunk-1] commit
[~DeviceA-e-trunk-1] quit
- # Bind E-Trunk 1's member interface Eth-Trunk 1 to the RBP named profile1 on Device A.
[~DeviceA] remote-backup-profile profile1
[*DeviceA-rm-backup-prf-profile1] e-trunk 1 eth-trunk 1
[*DeviceA-rm-backup-prf-profile1] commit
[~DeviceA-rm-backup-prf-profile1] quit
- # Enable the IGMP Report/Leave packet forwarding function on Device A.
[~DeviceA] igmp-snooping enable
[*DeviceA] interface Eth-Trunk 1
[*DeviceA-Eth-Trunk1] igmp-snooping backup-report forward
[*DeviceA-Eth-Trunk1] commit
[~DeviceA-Eth-Trunk1] quit
# Configure a dual-device E-Trunk 1 backup platform on Device B.
- # Configure E-Trunk 1 on Device B.
[~DeviceB] e-trunk 1
[*DeviceB-e-trunk-1] peer-address 1.1.1.1 source-address 2.2.2.2
[*DeviceB-e-trunk-1] commit
[~DeviceB-e-trunk-1] quit
- Bind E-Trunk 1's member interface Eth-Trunk 1 to the RBP named profile1 on Device B.
[~DeviceB] remote-backup-profile profile1
[*DeviceB-rm-backup-prf-profile1] e-trunk 1 eth-trunk 1
[*DeviceB-rm-backup-prf-profile1] commit
[~DeviceB-rm-backup-prf-profile1] quit
- Enable IGMP Report/Leave packet forwarding function on Device B.
[~DeviceB] igmp-snooping enable
[*DeviceB] interface Eth-Trunk 1
[*DeviceB-Eth-Trunk1] igmp-snooping backup-report forward
[*DeviceB-Eth-Trunk1] commit
[~DeviceB-Eth-Trunk1] quit
- # Configure E-Trunk 1 on Device A.
- (Optional) Create BFD sessions and bind them to E-Trunk.# Create BFD sessions and bind the peer IP tracking session to E-Trunk on Device A.
[~DeviceA] bfd
[*DeviceA-bfd] quit
[*DeviceA] bfd bfd1 bind peer-ip default-ip interface Eth-Trunk 1
[*DeviceA-bfd-session-bfd1] quit
[*DeviceA] bfd bfd2 bind peer-ip 2.2.2.2
[*DeviceA-bfd-session-bfd2] discriminator local 10
[*DeviceA-bfd-session-bfd2] discriminator remote 80
[*DeviceA-bfd-session-bfd2] quit
[*DeviceA] e-trunk 1
[*DeviceA-e-trunk-1] e-trunk track bfd-session session-name bfd2
[*DeviceA-e-trunk-1] quit
[*DeviceA] commit
# Create BFD sessions and bind the peer IP tracking session to E-Trunk on Device B.[~DeviceB] bfd
[*DeviceB-bfd] quit
[*DeviceB] bfd bfd1 bind peer-ip 1.1.1.1
[*DeviceB-bfd-session-bfd1] discriminator local 80
[*DeviceB-bfd-session-bfd1] discriminator remote 10
[*DeviceB-bfd-session-bfd1] quit
[*DeviceB] bfd bfd2 bind peer-ip default-ip interface Eth-Trunk 1
[*DeviceB-bfd-session-bfd2] quit
[*DeviceB] e-trunk 1
[*DeviceB-e-trunk-1] e-trunk track bfd-session session-name bfd1
[*DeviceB-e-trunk-1] quit
[*DeviceA] commit
- Enable remote backup for IGMP snooping services.# Enable remote backup for IGMP snooping services in the view of the RBP named profile1 on Device A.
[~DeviceA] remote-backup-profile profile1
[*DeviceA-rm-backup-prf-profile1] service-type igmp-snooping
[*DeviceA-rm-backup-prf-profile1] commit
[~DeviceA-rm-backup-prf-profile1] quit
# Bind the RBP to Device A's Eth-Trunk interface.[~DeviceA] interface Eth-Trunk 1
[*DeviceA-Eth-Trunk1] remote-backup-profile profile1
[*DeviceA-Eth-Trunk1] commit
[~DeviceA-Eth-Trunk1] quit
# Enable remote backup for IGMP snooping services in the view of the RBP named profile1 on Device B.[~DeviceB] remote-backup-profile profile1
[*DeviceB-rm-backup-prf-profile1] service-type igmp-snooping
[*DeviceB-rm-backup-prf-profile1] commit
[~DeviceB-rm-backup-prf-profile1] quit
# Bind the RBP to Device B's Eth-Trunk interface.[~DeviceB] interface Eth-Trunk 1
[*DeviceB-Eth-Trunk1] remote-backup-profile profile1
[*DeviceB-Eth-Trunk1] commit
[~DeviceB-Eth-Trunk1] quit
- Verify the configuration.After completing the configuration, run the display remote-backup-profile command on Device A. The command output shows that the RBP named profile1 has been created and the master/backup protocol is E-Trunk.
<DeviceA> display remote-backup-profile profile1
----------------------------------------------- Profile-Index : 0x1001 Profile-Name : profile1 Service : igmp-snooping Remote-backup-service: service1 Backup-ID : 1 track protocol : E-TRUNK E-Trunk ID : 1 Eth-trunk ID : 1 Interface : Eth-Trunk1 Backup mode : hot Slot-Number : -- Card-Number : -- Port-Number : -- ----------------------------------------------------------
Run the display remote-backup-profile command on Device B. The command output shows that the RBP named profile1 has been created and the master/backup protocol is E-Trunk.<DeviceB> display remote-backup-profile profile1
----------------------------------------------- Profile-Index : 0x1001 Profile-Name : profile1 Service : igmp-snooping Remote-backup-service: service1 Backup-ID : 1 track protocol : E-TRUNK E-Trunk ID : 1 Eth-trunk ID : 1 Interface : Eth-Trunk1 Backup mode : hot Slot-Number : -- Card-Number : -- Port-Number : -- ----------------------------------------------------------
Run the display remote-backup-service command on Device A. The command output shows that the RBS named service1 has been created.<DeviceA> display remote-backup-service service1
---------------------------------------------------------- Service-Index : 1 Service-Name : service1 TCP-State : Connected Peer-ip : 2.2.2.2 Source-ip : 1.1.1.1 TCP-Port : 1025 Track-BFD : -- Last up time : 2017-03-12 06:43:17 ----------------------------------------------------------
Run the display remote-backup-service command on Device B. The command output shows that the RBS named service1 has been created.<DeviceB> display remote-backup-service service1
---------------------------------------------------------- Service-Index : 1 Service-Name : service1 TCP-State : Connected Peer-ip : 1.1.1.1 Source-ip : 2.2.2.2 TCP-Port : 1025 Track-BFD : -- Last up time : 2017-03-12 06:43:54 ----------------------------------------------------------
Configuration Files
Device A configuration file
# sysname DeviceA # lacp e-trunk system-id 00e0-fc12-7890 # igmp-snooping enable # bfd # e-trunk 1 peer-address 2.2.2.2 source-address 1.1.1.1 e-trunk track bfd-session session-name bfd2 # remote-backup-service service1 peer 2.2.2.2 source 1.1.1.1 port 1025 # remote-backup-profile profile1 service-type igmp-snooping backup-id 10 remote-backup-service service1 peer-backup hot e-trunk 1 eth-trunk 1 # interface GigabitEthernet0/1/0 undo shutdown eth-trunk 1 # interface GigabitEthernet0/2/0 undo shutdown ip address 10.0.0.1 255.255.255.0 # ip address 10.0.0.1 255.255.255.0 mode lacp-static e-trunk 1 igmp-snooping backup-report forward remote-backup-profile profile1 # interface LoopBack1 ip address 1.1.1.1 255.255.255.255 # bfd bfd1 bind peer-ip default-ip interface Eth-Trunk 1 # bfd bfd2 bind peer-ip 2.2.2.2 discriminator local 10 discriminator remote 80 # ospf 1 area 0.0.0.0 network 1.1.1.1 0.0.0.0 network 10.0.0.0 0.0.0.255 # return
Device B configuration file
# sysname DeviceB # lacp e-trunk system-id 00e0-fc12-7890 # igmp-snooping enable # bfd # e-trunk 1 peer-address 1.1.1.1 source-address 2.2.2.2 e-trunk track bfd-session session-name bfd1 # remote-backup-service service1 peer 1.1.1.1 source 2.2.2.2 port 1025 # remote-backup-profile profile1 service-type igmp-snooping backup-id 10 remote-backup-service service1 peer-backup hot e-trunk 1 eth-trunk 1 # interface GigabitEthernet0/1/0 undo shutdown eth-trunk 1 # interface GigabitEthernet0/2/0 undo shutdown ip address 10.0.0.2 255.255.255.0 # ip address 10.0.0.2 255.255.255.0 mode lacp-static e-trunk 1 igmp-snooping backup-report forward remote-backup-profile profile1 # interface LoopBack1 ip address 2.2.2.2 255.255.255.255 # bfd bfd1 bind peer-ip 1.1.1.1 discriminator local 80 discriminator remote 10 # bfd bfd2 bind peer-ip default-ip interface Eth-Trunk 1 # ospf 1 area 0.0.0.0 network 2.2.2.2 0.0.0.0 network 10.0.0.0 0.0.0.255 # return
Device C configuration file
# sysname DeviceC # interface GigabitEthernet0/1/0 undo shutdown eth-trunk 1 # interface GigabitEthernet0/2/0 undo shutdown eth-trunk 1 # return