{
    "id": "018ef241-5069-44f8-9201-b35fa6874b3e",
    "name": "Dynamic Rendezvous Points with PIM BSR",
    "slug": "dynamic-rendezvous-points-with-pim-bsr",
    "status": "published",
    "lab_type": "pta",
    "is_sample": false,
    "duration_in_seconds": 1800,
    "metadata": {
        "courses": [
            "e2a1e73c-a8e0-4726-8b4f-eb120ea22acf"
        ],
        "pta_sdn": "1981",
        "collections": [],
        "pta_manual_id": "b4e5-f9d4-9290-538a",
        "pta_namespace": "my.ine",
        "learning_paths": [],
        "has_published_parent": true
    },
    "session": null,
    "company": "a491bc32-c056-4946-9169-cc053387bada",
    "created": "2026-03-04T17:05:15.299255Z",
    "modified": "2026-03-31T18:25:49.062326Z",
    "is_beta": false,
    "lab_objectives": [],
    "main_learning_area": "e73fd5a8-2ead-4159-9a25-38b50ad4ab20",
    "learning_areas": [
        {
            "id": "e73fd5a8-2ead-4159-9a25-38b50ad4ab20",
            "name": "Networking",
            "slug": "networking"
        }
    ],
    "categories": [],
    "tags": [],
    "difficulty": "professional",
    "is_web_access": false,
    "is_lab_experience": false,
    "is_featured": false,
    "cve": null,
    "severity": null,
    "year": null,
    "classification": null,
    "is_trackable": false,
    "cpe_credits": null,
    "is_skill_check": false,
    "external_url": "",
    "solution_video": null,
    "explanation_video": null,
    "description": "![image0](https://assets.ine.com/lab/learningpath/74444abf2501e44059f0d37a184338bdddadfd1a40756e49b5c384340d9b5eb7.png)\n\nWelcome to the Dynamic Rendezvous Points with PIM BSR lab, where you will gain hands-on experience configuring and validating dynamic RP discovery using the PIM Bootstrap Router mechanism. In this lab, you will enable multicast routing and PIM Sparse Mode, establish receiver interest, configure Candidate RPs, and designate a Bootstrap Router to distribute RP information throughout the multicast domain. By observing control-plane behavior and verifying (*,G) state without relying on multicast data traffic, you will reinforce how PIM BSR enables scalable, standards-based RP selection in a routed network.",
    "description_html": "<p><img alt=\"image0\" src=\"https://assets.ine.com/lab/learningpath/74444abf2501e44059f0d37a184338bdddadfd1a40756e49b5c384340d9b5eb7.png\" /></p>\n<p>Welcome to the Dynamic Rendezvous Points with PIM BSR lab, where you will gain hands-on experience configuring and validating dynamic RP discovery using the PIM Bootstrap Router mechanism. In this lab, you will enable multicast routing and PIM Sparse Mode, establish receiver interest, configure Candidate RPs, and designate a Bootstrap Router to distribute RP information throughout the multicast domain. By observing control-plane behavior and verifying (*,G) state without relying on multicast data traffic, you will reinforce how PIM BSR enables scalable, standards-based RP selection in a routed network.</p>",
    "tasks": "![image0](https://assets.ine.com/lab/learningpath/74444abf2501e44059f0d37a184338bdddadfd1a40756e49b5c384340d9b5eb7.png)\n\n# Lab Tasks \u2014 Dynamic Rendezvous Points with PIM BSR\n\n## Lab Overview\nIn this short lab, you will configure **PIM Sparse Mode with Bootstrap Router (BSR)** to enable **dynamic RP discovery** across the multicast domain.\n\nAll routers already have full **IPv4 end-to-end reachability via EIGRP**. Your task is to enable multicast routing, configure PIM, establish BSR functionality, and verify that the correct routers are used.\n\n> Note: You do **not** need to generate multicast traffic from the node labeled **MCAST-Source**. It can be ignored for this lab.\n\n---\n\n## Task 1 \u2014 Prepare the Domain (IGMP Join + Multicast Routing + PIM)\nTo make RP selection visible immediately after BSR is configured, start by creating receiver interest.\n\n### 1A \u2014 Force receiver interest (all MCAST-RCVR nodes)\nOn all nodes labeled **MCAST-RCVR**, configure the IGMP join on the receiver-facing interface:\n```\nip igmp join-group 225.9.9.9\n```\n\n### 1B \u2014 Enable multicast routing and PIM (routers R2\u2013R9)\nOn all routers participating in multicast forwarding (R2 through R9):\n\n- Enable global multicast routing\n- Enable PIM on all relevant interfaces\n- Verify that PIM neighbors form correctly\n\n---\n\n## Task 2 \u2014 Configure Candidate Rendezvous Points\nConfigure **R2 and R3** as **Candidate RPs**.\n\n- Both routers must advertise RP capability\n- **R3 must win the RP selection**\n- You are not told how the election works \u2014 configure appropriately\n\n---\n\n## Task 3 \u2014 Configure the Bootstrap Router\nConfigure **router R4** to operate as the **PIM Bootstrap Router (BSR)** for the multicast domain.\n\n- R4 must successfully advertise BSR information\n- All routers should learn RP information via BSR\n\n---\n\n## Task 4 \u2014 Verify RP Selection and BSR Operation\nVerify:\n\n- R4 is acting as the BSR\n- RP information is being distributed dynamically\n- **R3** is selected as the RP for group **225.9.9.9**\n- `(*,225.9.9.9)` state exists across the domain\n\n---\n\n## Task 5 \u2014 Observe BSR Signaling\nUsing GNS3:\n\n- Start packet captures on appropriate inter-router links\n- Observe PIM control-plane traffic in Wireshark\n- Correlate packet behavior with router state\n\n---\n\n## Task 6 \u2014 Final Validation\nConfirm:\n\n- R4 is the BSR\n- R3 is the selected RP\n- RP information was learned dynamically\n- `(*,225.9.9.9)` state exists across the domain",
    "tasks_html": "<p><img alt=\"image0\" src=\"https://assets.ine.com/lab/learningpath/74444abf2501e44059f0d37a184338bdddadfd1a40756e49b5c384340d9b5eb7.png\" /></p>\n<h1>Lab Tasks \u2014 Dynamic Rendezvous Points with PIM BSR</h1>\n<h2>Lab Overview</h2>\n<p>In this short lab, you will configure <strong>PIM Sparse Mode with Bootstrap Router (BSR)</strong> to enable <strong>dynamic RP discovery</strong> across the multicast domain.</p>\n<p>All routers already have full <strong>IPv4 end-to-end reachability via EIGRP</strong>. Your task is to enable multicast routing, configure PIM, establish BSR functionality, and verify that the correct routers are used.</p>\n<blockquote>\n<p>Note: You do <strong>not</strong> need to generate multicast traffic from the node labeled <strong>MCAST-Source</strong>. It can be ignored for this lab.</p>\n</blockquote>\n<hr />\n<h2>Task 1 \u2014 Prepare the Domain (IGMP Join + Multicast Routing + PIM)</h2>\n<p>To make RP selection visible immediately after BSR is configured, start by creating receiver interest.</p>\n<h3>1A \u2014 Force receiver interest (all MCAST-RCVR nodes)</h3>\n<p>On all nodes labeled <strong>MCAST-RCVR</strong>, configure the IGMP join on the receiver-facing interface:\n<pre class=\"codehilite\"><code>ip igmp join-group 225.9.9.9</code></pre></p>\n<h3>1B \u2014 Enable multicast routing and PIM (routers R2\u2013R9)</h3>\n<p>On all routers participating in multicast forwarding (R2 through R9):</p>\n<ul>\n<li>Enable global multicast routing</li>\n<li>Enable PIM on all relevant interfaces</li>\n<li>Verify that PIM neighbors form correctly</li>\n</ul>\n<hr />\n<h2>Task 2 \u2014 Configure Candidate Rendezvous Points</h2>\n<p>Configure <strong>R2 and R3</strong> as <strong>Candidate RPs</strong>.</p>\n<ul>\n<li>Both routers must advertise RP capability</li>\n<li><strong>R3 must win the RP selection</strong></li>\n<li>You are not told how the election works \u2014 configure appropriately</li>\n</ul>\n<hr />\n<h2>Task 3 \u2014 Configure the Bootstrap Router</h2>\n<p>Configure <strong>router R4</strong> to operate as the <strong>PIM Bootstrap Router (BSR)</strong> for the multicast domain.</p>\n<ul>\n<li>R4 must successfully advertise BSR information</li>\n<li>All routers should learn RP information via BSR</li>\n</ul>\n<hr />\n<h2>Task 4 \u2014 Verify RP Selection and BSR Operation</h2>\n<p>Verify:</p>\n<ul>\n<li>R4 is acting as the BSR</li>\n<li>RP information is being distributed dynamically</li>\n<li><strong>R3</strong> is selected as the RP for group <strong>225.9.9.9</strong></li>\n<li><code>(*,225.9.9.9)</code> state exists across the domain</li>\n</ul>\n<hr />\n<h2>Task 5 \u2014 Observe BSR Signaling</h2>\n<p>Using GNS3:</p>\n<ul>\n<li>Start packet captures on appropriate inter-router links</li>\n<li>Observe PIM control-plane traffic in Wireshark</li>\n<li>Correlate packet behavior with router state</li>\n</ul>\n<hr />\n<h2>Task 6 \u2014 Final Validation</h2>\n<p>Confirm:</p>\n<ul>\n<li>R4 is the BSR</li>\n<li>R3 is the selected RP</li>\n<li>RP information was learned dynamically</li>\n<li><code>(*,225.9.9.9)</code> state exists across the domain</li>\n</ul>",
    "published_date": "2026-03-31T18:25:49.053916Z",
    "solutions": "![image0](https://assets.ine.com/lab/learningpath/74444abf2501e44059f0d37a184338bdddadfd1a40756e49b5c384340d9b5eb7.png)\n\n\n# Lab Solutions \u2014 Dynamic Rendezvous Points with PIM BSR\n\nThis solution walks through the required control-plane behavior and configurations needed to reach the correct end state. The focus is on **BSR operation**, **RP selection**, and **verification**, not multicast data forwarding.\n\n---\n\n## 1) Initial State\nWith only unicast routing configured:\n\n- No multicast routing is enabled\n- No PIM adjacencies exist\n- No RP information is available\n- No multicast routing table entries are present\n\n---\n\n## 2) Why We Start With IGMP Joins in This Lab\nThis lab is intentionally built so that **receiver interest exists first**, which makes RP selection obvious as soon as BSR and Candidate-RP configuration is completed.\n\nWithout IGMP joins, you can still verify BSR/RP state with `show` commands, but you may not immediately see meaningful `(*,G)` state for the test group.\n\n---\n\n## 3) Correct Configuration\n\n### 3.1 Force receiver interest (all MCAST-RCVR nodes)\nOn each node labeled **MCAST-RCVR**, apply on the receiver-facing interface:\n\n```\nip igmp join-group 225.9.9.9\n```\n\nYou can confirm the join locally with:\n```\nshow ip igmp groups\n```\n\n---\n\n### 3.2 Enable Multicast Routing and PIM (All Routers R2\u2013R9)\nApply the following configuration on **every router from R2 through R9**:\n\n```\nconf t\nip multicast-routing\n!\ninterface range gig0/0 - 3 , loopback0\n ip pim sparse-mode\nend\n```\n\nAfter this, verify neighbors form where expected:\n```\nshow ip pim neighbor\nshow ip pim interface\n```\n\n---\n\n### 3.3 Candidate RP Configuration (R3 must be selected RP)\n\n**R2 \u2014 Candidate RP**\n```\nconf t\nip pim rp-candidate loopback0 priority 10\nend\n```\n\n**R3 \u2014 Candidate RP (selected RP)**\n```\nconf t\nip pim rp-candidate loopback0 priority 0\nend\n```\n\nResult:\n- R3 is selected as RP due to a lower RP priority. This will be verified momentarily.\n\n---\n\n### 3.4 Bootstrap Router Configuration (R4 is the BSR)\n\n**R4 \u2014 PIM Bootstrap Router**\n```\nconf t\nip pim bsr-candidate loopback0\nend\n```\n\nResult:\n- R4 originates Bootstrap messages.\n- All routers learn the Candidate RP set and compute RP mappings.\n\n---\n\n## 4) Verification (do this from any router)\nOnce Task 1 (PIM) is done, and after Tasks 2\u20133 are configured, verify both control-plane roles and that the group is using the intended RP.\n\n### 4.1 Verify BSR and RP mapping\n```\nshow ip pim bsr\nshow ip pim rp\nshow ip pim rp mapping\n```\n\nExpected:\n- **BSR = R4**\n- **RP = R3** (for the appropriate group range / including 225.9.9.9)\n\n    ```\n    R8#show ip pim bsr\n    PIMv2 Bootstrap information\n      BSR address: 4.4.4.4 (?)\n      Uptime:      00:00:12, BSR Priority: 0, Hash mask length: 0\n      Expires:     00:01:57\n    R8#\n    ```\n\n    ```\n    R8#show ip pim rp mapping\n    PIM Group-to-RP Mappings\n    \n    Group(s) 224.0.0.0/4\n      RP 3.3.3.3 (?), v2\n        Info source: 4.4.4.4 (?), via bootstrap, priority 0, holdtime 150\n             Uptime: 00:26:35, expires: 00:01:38\n      RP 2.2.2.2 (?), v2\n        Info source: 4.4.4.4 (?), via bootstrap, priority 10, holdtime 150\n             Uptime: 00:26:35, expires: 00:01:37\n    R8#\n    \n    ```\n\n### 4.2 Verify `(*,225.9.9.9)` state exists\nBecause IGMP joins were configured at the start, you should now see `(*,G)` state for the test group:\n\n```\nshow ip mroute 225.9.9.9\n```\n\nNotice below that the mroute output confirms that R3 (3.3.3.3) has been elected as the PIM RP\n\n```\nR8#show ip mroute 225.9.9.9\nIP Multicast Routing Table\nFlags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,\n       L - Local, P - Pruned, R - RP-bit set, F - Register flag,\n       T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,\n       X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,\n       U - URD, I - Received Source Specific Host Report, \n       Z - Multicast Tunnel, z - MDT-data group sender, \n       Y - Joined MDT-data group, y - Sending to MDT-data group, \n       G - Received BGP C-Mroute, g - Sent BGP C-Mroute, \n       N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed, \n       Q - Received BGP S-A Route, q - Sent BGP S-A Route, \n       V - RD & Vector, v - Vector, p - PIM Joins on route, \n       x - VxLAN group\nOutgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join\n Timers: Uptime/Expires\n Interface state: Interface, Next-Hop or VCD, State/Mode\n\n(*, 225.9.9.9), 00:30:24/00:02:39, RP 3.3.3.3, flags: SJC\n  Incoming interface: GigabitEthernet0/0, RPF nbr 155.1.58.5\n  Outgoing interface list:\n    GigabitEthernet0/2, Forward/Sparse, 00:30:24/00:02:39\n\nR8#\n```\n\n### 4.3 Verify IGMP group presence at the edges\nOn the receiver routers (and/or the MCAST-RCVR nodes):\n```\nshow ip igmp groups\n```\n\n```\nR8#show ip igmp group\nIGMP Connected Group Membership\nGroup Address    Interface                Uptime    Expires   Last Reporter   Group Accounted\n225.9.9.9        GigabitEthernet0/2       00:31:33  00:02:27  155.1.88.1      \n224.0.1.40       GigabitEthernet0/0       00:31:35  00:02:29  155.1.58.8      \nR8#\n```\n---\n\n## 5) Packet Capture (optional confirmation)\nStart a capture on a core link and look for PIM control-plane traffic. This validates that router state aligns with observed signaling.\n\n![image1](https://assets.ine.com/lab/learningpath/94e24277f9fd3a3a1fae49265e4f73a09b9664488b899cae9bd48c444a0155e0.png)\n\n---\n\n## 6) Final Checklist\n- R4 is the BSR\n- R3 is the RP\n- RP learned dynamically\n- `(*,225.9.9.9)` state exists across the domain",
    "solutions_html": "<p><img alt=\"image0\" src=\"https://assets.ine.com/lab/learningpath/74444abf2501e44059f0d37a184338bdddadfd1a40756e49b5c384340d9b5eb7.png\" /></p>\n<h1>Lab Solutions \u2014 Dynamic Rendezvous Points with PIM BSR</h1>\n<p>This solution walks through the required control-plane behavior and configurations needed to reach the correct end state. The focus is on <strong>BSR operation</strong>, <strong>RP selection</strong>, and <strong>verification</strong>, not multicast data forwarding.</p>\n<hr />\n<h2>1) Initial State</h2>\n<p>With only unicast routing configured:</p>\n<ul>\n<li>No multicast routing is enabled</li>\n<li>No PIM adjacencies exist</li>\n<li>No RP information is available</li>\n<li>No multicast routing table entries are present</li>\n</ul>\n<hr />\n<h2>2) Why We Start With IGMP Joins in This Lab</h2>\n<p>This lab is intentionally built so that <strong>receiver interest exists first</strong>, which makes RP selection obvious as soon as BSR and Candidate-RP configuration is completed.</p>\n<p>Without IGMP joins, you can still verify BSR/RP state with <code>show</code> commands, but you may not immediately see meaningful <code>(*,G)</code> state for the test group.</p>\n<hr />\n<h2>3) Correct Configuration</h2>\n<h3>3.1 Force receiver interest (all MCAST-RCVR nodes)</h3>\n<p>On each node labeled <strong>MCAST-RCVR</strong>, apply on the receiver-facing interface:</p>\n<pre class=\"codehilite\"><code>ip igmp join-group 225.9.9.9</code></pre>\n\n<p>You can confirm the join locally with:\n<pre class=\"codehilite\"><code>show ip igmp groups</code></pre></p>\n<hr />\n<h3>3.2 Enable Multicast Routing and PIM (All Routers R2\u2013R9)</h3>\n<p>Apply the following configuration on <strong>every router from R2 through R9</strong>:</p>\n<pre class=\"codehilite\"><code>conf t\nip multicast-routing\n!\ninterface range gig0/0 - 3 , loopback0\n ip pim sparse-mode\nend</code></pre>\n\n<p>After this, verify neighbors form where expected:\n<pre class=\"codehilite\"><code>show ip pim neighbor\nshow ip pim interface</code></pre></p>\n<hr />\n<h3>3.3 Candidate RP Configuration (R3 must be selected RP)</h3>\n<p><strong>R2 \u2014 Candidate RP</strong>\n<pre class=\"codehilite\"><code>conf t\nip pim rp-candidate loopback0 priority 10\nend</code></pre></p>\n<p><strong>R3 \u2014 Candidate RP (selected RP)</strong>\n<pre class=\"codehilite\"><code>conf t\nip pim rp-candidate loopback0 priority 0\nend</code></pre></p>\n<p>Result:\n- R3 is selected as RP due to a lower RP priority. This will be verified momentarily.</p>\n<hr />\n<h3>3.4 Bootstrap Router Configuration (R4 is the BSR)</h3>\n<p><strong>R4 \u2014 PIM Bootstrap Router</strong>\n<pre class=\"codehilite\"><code>conf t\nip pim bsr-candidate loopback0\nend</code></pre></p>\n<p>Result:\n- R4 originates Bootstrap messages.\n- All routers learn the Candidate RP set and compute RP mappings.</p>\n<hr />\n<h2>4) Verification (do this from any router)</h2>\n<p>Once Task 1 (PIM) is done, and after Tasks 2\u20133 are configured, verify both control-plane roles and that the group is using the intended RP.</p>\n<h3>4.1 Verify BSR and RP mapping</h3>\n<pre class=\"codehilite\"><code>show ip pim bsr\nshow ip pim rp\nshow ip pim rp mapping</code></pre>\n\n<p>Expected:\n- <strong>BSR = R4</strong>\n- <strong>RP = R3</strong> (for the appropriate group range / including 225.9.9.9)</p>\n<pre class=\"codehilite\"><code>```\nR8#show ip pim bsr\nPIMv2 Bootstrap information\n  BSR address: 4.4.4.4 (?)\n  Uptime:      00:00:12, BSR Priority: 0, Hash mask length: 0\n  Expires:     00:01:57\nR8#\n```\n\n```\nR8#show ip pim rp mapping\nPIM Group-to-RP Mappings\n\nGroup(s) 224.0.0.0/4\n  RP 3.3.3.3 (?), v2\n    Info source: 4.4.4.4 (?), via bootstrap, priority 0, holdtime 150\n         Uptime: 00:26:35, expires: 00:01:38\n  RP 2.2.2.2 (?), v2\n    Info source: 4.4.4.4 (?), via bootstrap, priority 10, holdtime 150\n         Uptime: 00:26:35, expires: 00:01:37\nR8#\n\n```</code></pre>\n\n\n<h3>4.2 Verify <code>(*,225.9.9.9)</code> state exists</h3>\n<p>Because IGMP joins were configured at the start, you should now see <code>(*,G)</code> state for the test group:</p>\n<pre class=\"codehilite\"><code>show ip mroute 225.9.9.9</code></pre>\n\n<p>Notice below that the mroute output confirms that R3 (3.3.3.3) has been elected as the PIM RP</p>\n<pre class=\"codehilite\"><code>R8#show ip mroute 225.9.9.9\nIP Multicast Routing Table\nFlags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,\n       L - Local, P - Pruned, R - RP-bit set, F - Register flag,\n       T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,\n       X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,\n       U - URD, I - Received Source Specific Host Report, \n       Z - Multicast Tunnel, z - MDT-data group sender, \n       Y - Joined MDT-data group, y - Sending to MDT-data group, \n       G - Received BGP C-Mroute, g - Sent BGP C-Mroute, \n       N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed, \n       Q - Received BGP S-A Route, q - Sent BGP S-A Route, \n       V - RD &amp; Vector, v - Vector, p - PIM Joins on route, \n       x - VxLAN group\nOutgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join\n Timers: Uptime/Expires\n Interface state: Interface, Next-Hop or VCD, State/Mode\n\n(*, 225.9.9.9), 00:30:24/00:02:39, RP 3.3.3.3, flags: SJC\n  Incoming interface: GigabitEthernet0/0, RPF nbr 155.1.58.5\n  Outgoing interface list:\n    GigabitEthernet0/2, Forward/Sparse, 00:30:24/00:02:39\n\nR8#</code></pre>\n\n<h3>4.3 Verify IGMP group presence at the edges</h3>\n<p>On the receiver routers (and/or the MCAST-RCVR nodes):\n<pre class=\"codehilite\"><code>show ip igmp groups</code></pre></p>\n<h2><pre class=\"codehilite\"><code>R8#show ip igmp group\nIGMP Connected Group Membership\nGroup Address    Interface                Uptime    Expires   Last Reporter   Group Accounted\n225.9.9.9        GigabitEthernet0/2       00:31:33  00:02:27  155.1.88.1      \n224.0.1.40       GigabitEthernet0/0       00:31:35  00:02:29  155.1.58.8      \nR8#</code></pre></h2>\n<h2>5) Packet Capture (optional confirmation)</h2>\n<p>Start a capture on a core link and look for PIM control-plane traffic. This validates that router state aligns with observed signaling.</p>\n<p><img alt=\"image1\" src=\"https://assets.ine.com/lab/learningpath/94e24277f9fd3a3a1fae49265e4f73a09b9664488b899cae9bd48c444a0155e0.png\" /></p>\n<hr />\n<h2>6) Final Checklist</h2>\n<ul>\n<li>R4 is the BSR</li>\n<li>R3 is the RP</li>\n<li>RP learned dynamically</li>\n<li><code>(*,225.9.9.9)</code> state exists across the domain</li>\n</ul>",
    "flags": [],
    "min_points_to_pass": null,
    "access_type": "default",
    "taxonomy_skills": [],
    "user_status": "unstarted",
    "user_lab_status": null,
    "user_status_modified": null,
    "user_flags": [],
    "global_running_session": null
}