Lab Objective:
The focus of this lab is to understand IP Multicast Auto RP implementation Cisco IOS routers. Additional technologies include Internet Group Management Protocol (IGMP).
Lab Topology:
The lab network topology is illustrated below:
|
IMPORTANT NOTE If you are using the www.howtonetwork.net racks, please bring up the LAN interfaces connected to the routers by issuing the no shutdown command on the connected switches. If you are using a home lab with no interface fastethernet 0/0 Alternately, you can simply connect the interfaces to a hub or switch if you have one available in your own lab. |
Task 1
Configure the hostnames, IP addressing on all routers as illustrated in the network topology.
Task 2
Enable EIGRP on all routers as illustrated in the topology. Verify your EIGRP configuration.
Task 3
Enable Internet Group Management Protocol version 2 on the LAN interfaces of routers R1 and R4. Next, enable Sparse-Dense Mode forwarding on the interfaces. Verify your solution using the appropriate commands.
Task 4
Enable Sparse-Dense Mode forwarding on all router WAN interfaces. Verify your configuration using the appropriate commands.
Task 5
Configure R1 so that its LAN interface is joined to Multicast group 227.1.1.1. Configure R4 so that its LAN interface is joined to Multicast group 227.4.4.4. Verify that R1 can ping R4s Multicast group and that R4 can ping R1s Multicast group.
Task 6
Configure Cisco Auto RP functionality on all routers. Use the following guidelines:
- R2 should be configured with a Loopback 0 interface of 2.2.2.2/32
- R2 should be configured to announce Loopback 0 as the candidate RP for all groups
- R3 should be configured with a Loopback 0 interface of 3.3.3.3/32
- R3 should be configured to advertise the RP information to all other routers
- R3 should use its Loopback 0 interface to send these advertisements
- R1 and R4 should be configured to listen to advertised RP Discovery messages
To complete this task, use the following commands on the routers. It will be up to you to determine which command(s) will need to be enabled on which router.
- The ip pim send-rp-discovery command
- The ip pim send-rp-announce command
- The ip pim accept-rp auto-rp command
Finally, complete this task by pinging from R1 to 227.4.4.4 and from R4 to 227.1.1.1.
Lab Validation
Task 1
Please refer to previous tasks for basic VLAN and IP addressing configuration. These will not be included in this section for brevity and to avoid being redundant.
Task 2
Please refer to previous labs for basic EIGRP configuration. Following this, verify your EIGRP configuration using the show ip eigrp neighbors andshow ip route commands. Following this configuration, your route tables should show the following route information:
| R1#show ip route eigrp 10.0.0.0/30 is subnetted, 3 subnets D 10.0.0.8 [90/2681856] via 10.0.0.2, 00:00:12, Serial0/0 D 10.0.0.12 [90/21536000] via 10.0.0.2, 00:00:12, Serial0/0 150.4.0.0/24 is subnetted, 1 subnets D 150.4.4.0 [90/21538560] via 10.0.0.2, 00:00:12, Serial0/0 |
| R2#show ip route eigrp 10.0.0.0/30 is subnetted, 3 subnets D 10.0.0.12 [90/21024000] via 10.0.0.10, 00:00:22, Serial0/1 150.1.0.0/24 is subnetted, 1 subnets D 150.1.1.0 [90/2172416] via 10.0.0.1, 00:00:17, Serial0/0 150.4.0.0/24 is subnetted, 1 subnets D 150.4.4.0 [90/21026560] via 10.0.0.10, 00:00:22, Serial0/1 |
| R3#show ip route eigrp 10.0.0.0/30 is subnetted, 3 subnets D 10.0.0.0 [90/21024000] via 10.0.0.9, 00:00:25, Serial1/1 150.1.0.0/24 is subnetted, 1 subnets D 150.1.1.0 [90/21026560] via 10.0.0.9, 00:00:20, Serial1/1 150.4.0.0/24 is subnetted, 1 subnets D 150.4.4.0 [90/20514560] via 10.0.0.14, 00:00:31, Serial1/2 |
| R4#show ip route eigrp 10.0.0.0/30 is subnetted, 3 subnets D 10.0.0.8 [90/21024000] via 10.0.0.13, 00:00:34, Serial0/0 D 10.0.0.0 [90/21536000] via 10.0.0.13, 00:00:28, Serial0/0 150.1.0.0/24 is subnetted, 1 subnets D 150.1.1.0 [90/21538560] via 10.0.0.13, 00:00:23, Serial0/0 |
Task 3
The requirement of this task is straightforward. This task is completed as follows:
| R1(config)#ip multicast-routing R1(config)#interface fastethernet 0/0 R1(config-if)#ip igmp version 2 R1(config-if)#ip pim sparse-dense-mode R1(config-if)#exit |
| R4(config)#ip multicast-routing R4(config)#interface fastethernet 0/0 R4(config-if)#ip igmp version 2 R4(config-if)#ip pim sparse-dense-mode R4(config-if)#exit |
Next, verify your configuration using the show ip igmp interface command:
| R1#show ip igmp interface fastethernet 0/0 FastEthernet0/0 is up, line protocol is up Internet address is 150.1.1.1/24 IGMP is enabled on interface Current IGMP host version is 2 Current IGMP router version is 2 IGMP query interval is 60 seconds IGMP querier timeout is 120 seconds IGMP max query response time is 10 seconds Last member query count is 2 Last member query response interval is 1000 ms Inbound IGMP access group is not set IGMP activity: 1 joins, 0 leaves Multicast routing is enabled on interface Multicast TTL threshold is 0 Multicast designated router (DR) is 150.1.1.4 IGMP querying router is 150.1.1.1 (this system) Multicast groups joined by this system (number of users): 224.0.1.40(1) |
Notice in the last line of the output that the interface is automatically joined to group 224.0.1.40. This group is for Cisco RP Discovery messages. The interface is automatically joined to this group because Dense mode assumes that all hosts wants to receive Multicast traffic, unless they explicitly state that they do not. This group is enabled by default; it simply indicates that the interface is listening for packets that may be sent to this group address. You can verify the PIM operational mode using the show ip pim interface command:
| R1#show ip pim interface fastethernet 0/0 detail FastEthernet0/0 is up, line protocol is up Internet address is 150.1.1.1/24 Multicast switching: fast Multicast packets in/out: 326/0 Multicast TTL threshold: 0 PIM: enabled PIM version: 2, mode: sparse-dense PIM DR: 150.1.1.4 PIM neighbor count: 0 PIM Hello/Query interval: 30 seconds PIM Hello packets in/out: 19/21 PIM State-Refresh processing: enabled PIM State-Refresh origination: disabled PIM NBMA mode: disabled PIM ATM multipoint signalling: disabled PIM domain border: disabled Multicast Tagswitching: disabled |
Task 4
The requirements of this task are straightforward. This task is completed as follows:
| R1(config)#interface serial 0/0 R1(config-if)#ip pim sparse-dense-mode R1(config-if)#exit |
| R2(config)#ip multicast-routing R2(config)#interface serial 0/0 R2(config-if)#ip pim sparse-dense-mode R2(config-if)#exit R2(config)#interface serial 0/1 R2(config-if)#ip pim sparse-dense-mode R2(config-if)#exit |
| R3(config)#ip multicast-routing R3(config)#interface serial 1/1 R3(config-if)#ip pim sparse-dense-mode R3(config-if)#exit R3(config)#interface serial 1/2 R3(config-if)#ip pim sparse-dense-mode R3(config-if)#exit |
| R4(config)#interface serial 0/0 R4(config-if)#ip pim sparse-dense-mode R4(config-if)#exit |
Next, verify PIM Sparse-Dense Mode parameters using the show ip pim interface command:
| R4#show ip pim interface serial 0/0 detail Serial0/0 is up, line protocol is up Internet address is 10.0.0.14/30 Multicast switching: fast Multicast packets in/out: 332/0 Multicast TTL threshold: 0 PIM: enabled PIM version: 2, mode: sparse-dense PIM DR: 0.0.0.0 PIM neighbor count: 1 PIM Hello/Query interval: 30 seconds PIM Hello packets in/out: 2/3 PIM State-Refresh processing: enabled PIM State-Refresh origination: disabled PIM NBMA mode: disabled PIM ATM multipoint signalling: disabled PIM domain border: disabled Multicast Tagswitching: disabled |
Task 5
To configure a router interface to join a Multicast group, a technique commonly used to test the Multicast configuration, use the ip igmp join-group <group> interface command:
| R1(config)#interface fastethernet 0/0 R1(config-if)#ip igmp join-group 227.1.1.1 R1(config-if)#exit |
| R4(config)#interface fastethernet 0/0 R4(config-if)#ip igmp join-group 227.4.4.4 R4(config-if)#exit |
Next, verify your configuration using the show ip igmp interface command:
| R1#show ip igmp interface fastethernet 0/0 FastEthernet0/0 is up, line protocol is up Internet address is 150.1.1.1/24 IGMP is enabled on interface Current IGMP host version is 2 Current IGMP router version is 2 IGMP query interval is 60 seconds IGMP querier timeout is 120 seconds IGMP max query response time is 10 seconds Last member query count is 2 Last member query response interval is 1000 ms Inbound IGMP access group is not set IGMP activity: 3 joins, 0 leaves Multicast routing is enabled on interface Multicast TTL threshold is 0 Multicast designated router (DR) is 150.4.4.4 IGMP querying router is 150.1.1.1 (this system) Multicast groups joined by this system (number of users): 224.0.1.40(1) 227.1.1.1(1) |
| R4#show ip igmp interface fastethernet 0/0 FastEthernet0/0 is up, line protocol is up Internet address is 150.4.4.4/24 IGMP is enabled on interface Current IGMP host version is 2 Current IGMP router version is 2 IGMP query interval is 60 seconds IGMP querier timeout is 120 seconds IGMP max query response time is 10 seconds Last member query count is 2 Last member query response interval is 1000 ms Inbound IGMP access group is not set IGMP activity: 3 joins, 0 leaves Multicast routing is enabled on interface Multicast TTL threshold is 0 Multicast designated router (DR) is 150.4.4.4 (this system) IGMP querying router is 150.1.1.1 Multicast groups joined by this system (number of users): 224.0.1.40(1) 227.4.4.4(1) |
Task 6
This task requires the configuration of auto RP. As stated in the TSHOOT guide, in Cisco IOS Software, there are three ways in which the location of the RP can be specified:
- By statically configuring the router or switch with the RP IP address
- Automatically, using the Cisco Auto-RP mechanism
- Automatically, using the Bootstrap Router mechanism with PIMv2
While the concept of Auto-RP seems very complex, the operation of auto RP is actually fairly straightforward. Each router that you configure to be an RP begins generating Cisco-RP-Announce messages addressed to the 224.0.1.39 group address. These announce messages are flooded through the network in a dense-mode fashion, ensuring that each router receives a copy. Next, the mapping agent for the network listens for the various announce messages and makes a decision as to which router is the RP.
In the event that there are multiple RPs (for redundancy), the candidate RP with the highest IP address is chosen as the RP for the network. The mapping agent then advertises this decision to the network in a Cisco-RP-Discovery message addressed to the 224.0.1.40 group address. Like the announce message, the discovery message is propagated in a dense-mode fashion throughout the network. Once all routers in the network receive the RP, Multicast operates using sparse-mode. This is the reason we need to enable Sparse-Dense mode forwarding. To complete this task, use theip pim accept-rp auto-rp command on R1 and R4. This command configures these routers to accept join and register messages only for RPs that are in the Auto-RP cache. These cache entries are created after the RP information is flooded:
| R1(config)#ip pim accept-rp auto-rp |
| R4(config)#ip pim accept-rp auto-rp |
Next, use the ip pim send-rp-announce command on the router you want to become the RP. In this lab, that would be R1. This command causes the router to send an Auto-RP announcement message to the well-known group CISCO-RP-ANNOUNCE (224.0.1.39). This message announces the router as a candidate RP for all or specified Multicast groups:
| R2(config)#interface loopback 0 R2(config-if)#ip address 2.2.2.2 255.255.255.255 R2(config-if)#ip pim sparse-dense-mode R2(config-if)#exit R2(config)#ip pim send-rp-announce loopback 0 scope 255 |
NOTE: You MUST advertise the Loopback 0 interface via EIGRP. If you enabled EIGRP for all networks using the network 0.0.0.0 command, no additional configuration is necessary. However, if you explicitly enabled EIGRP for specific subnets, you need to also advertise the configured Loopback 0 interface via EIGRP; otherwise, no other router can reach this address.
When using this command, the scope specifies the TTL of these announcements. For example, if you specified a scope of 1, the packet would be sent out with a TTL of 1.
Finally, use the ip pim send-rp-discovery command on the router you want to become the RP mapping agent. In this lab, that would be R3. When Auto-RP is used, the following sequence of events occur:
- The RP mapping agent (R3) listens on well-known group address CISCO-RP-ANNOUNCE (224.0.1.39), which candidate RPs (R2) send announcements to.
- The RP mapping agent (R3) sends RP-to-group mappings in an Auto-RP discovery message to the well-known group CISCO-RP-DISCOVERY (224.0.1.40). The TTL value (determined by the scope) limits how many hops the message can take.
- PIM designated routers (R1 and R4) listen to this group and use the RPs they learn about from the discovery message.
This task is completed on R3 as follows:
| R3(config)#interface loopback 0 R3(config-if)#ip address 3.3.3.3 255.255.255.255 R3(config-if)#ip pim sparse-dense-mode R3(config-if)#exit R3(config)#ip pim send-rp-discovery loopback 0 scope 255 |
NOTE: You MUST advertise the Loopback 0 interface via EIGRP. If you enabled EIGRP for all networks using the network 0.0.0.0 command, no additional configuration is necessary. However, if you explicitly enabled EIGRP for specific subnets, you need to also advertise the configured Loopback 0 interface via EIGRP; otherwise, no other router can reach this address.
Next, use the show ip pim autorp command to view auto RP received and sent packets:
| R1#show ip pim autorp AutoRP Information: AutoRP is enabled. PIM AutoRP Statistics: Sent/Received |
Notice that R1 has received RP-Discovery messages. It has not sent out any other RP messages:
| R2#show ip pim autorp AutoRP Information: AutoRP is enabled. PIM AutoRP Statistics: Sent/Received |
Notice that R2 has sent out RP-Announce packets. It has also received RP-Discovery packets.
| R3#show ip pim autorp AutoRP Information: AutoRP is enabled. PIM AutoRP Statistics: Sent/Received |
Notice that R3 has received RP-Announce messages, and has sent out RP-Discovery messages:
| R4#show ip pim autorp AutoRP Information: AutoRP is enabled. PIM AutoRP Statistics: Sent/Received |
And finally, notice that R4 has only received RP-Discovery messages and sent out none:
Following this, verify RP-to-Group mappings using the show ip pim rp command:
| R1#show ip pim rp Group: 227.4.4.4, RP: 2.2.2.2, v2, v1, uptime 00:07:19, expires 00:02:40 Group: 227.1.1.1, RP: 2.2.2.2, v2, v1, uptime 00:07:19, expires 00:02:40 |
| R2#show ip pim rp Group: 227.4.4.4, RP: 2.2.2.2, v2, v1, next RP-reachable in 00:00:14 Group: 227.1.1.1, RP: 2.2.2.2, v2, v1, next RP-reachable in 00:00:14 |
| R3#show ip pim rp Group: 227.4.4.4, RP: 2.2.2.2, v2, v1, uptime 00:07:12, expires 00:02:43 Group: 227.1.1.1, RP: 2.2.2.2, v2, v1, uptime 00:07:12, expires 00:02:43 |
| R4#show ip pim rp Group: 227.4.4.4, RP: 2.2.2.2, v2, v1, uptime 00:07:07, expires 00:02:47 Group: 227.1.1.1, RP: 2.2.2.2, v2, v1, uptime 00:07:07, expires 00:02:47 |
Finally, complete this task by pinging from R1 to 227.4.4.4 and from R4 to 227.1.1.1
| R1#ping 227.4.4.4
Type escape sequence to abort. Reply to request 0 from 10.0.0.14, 32 ms |
| R4#ping 227.1.1.1
Type escape sequence to abort. Reply to request 0 from 10.0.0.1, 48 ms |
Final Router Configurations
R1
|
R1#term len 0 Current configuration : 994 bytes R1# |
R2
|
R2#term len 0 Current configuration : 1059 bytes R2# |
R3
|
R3#term len 0 Current configuration : 1401 bytes R3# |
R4
|
R4#term len 0 Current configuration : 975 bytes R4# |
