++++++++++++++++++++++++++++++++++++++
NAT
++++++++++++++++++++++++++++++++++++++

******************************
Lab - 1 - Dynamic NAT
******************************

! 1. Configure the Public Pool

ip nat pool POOL-A 192.1.10.51 192.1.10.254 netmask 255.255.255.0

! 2. Configure a NAT ACL to specify the traffic that will be natted

access-list 101 permit ip 192.168.2.0 0.0.0.255 any

! 3. Link the Pool to the NAT ACL

ip nat inside source list 101 pool POOL-A

! 4. Specify the Outside and Inside Interface for NAT

Interface E0/0
 ip nat outside
!
Interface E0/1
 ip nat inside

******************************
Lab - 2 - Dynamic PAT
******************************

! 1. Configure the Public Pool

ip nat pool POOL-B 192.1.10.4 192.1.10.4 netmask 255.255.255.0

! 2. Configure a NAT ACL to specify the traffic that will be translated using a Single Public Address

access-list 102 permit ip 192.168.1.0 0.0.0.255 any

! 3. Link the Pool to the NAT ACL

ip nat inside source list 102 pool POOL-B overload

! 4. Specify the Outside and Inside Interface for NAT (Already configured in the previous step)

Interface E0/0
 ip nat outside
!
Interface E0/1
 ip nat inside

******************************
Lab - 3 - Static NAT
******************************

! 1. Configure a static entry to translated the Internal Servers based on the following:

192.168.3.1 should be translated as 192.1.10.31
192.168.3.2 should be translated as 192.1.10.32
192.168.3.3 should be translated as 192.1.10.33

ip nat inside source static 192.168.3.1 192.1.10.31
ip nat inside source static 192.168.3.2 192.1.10.32
ip nat inside source static 192.168.3.3 192.1.10.33

******************************
Lab - 4 - Static PAT
******************************

! 1. Configure a static entry to translated the Internal Servers based on the following:

192.168.4.1:80 should be translated as 192.1.10.5:80
192.168.4.2:25 should be translated as 192.1.10.5:25
192.168.4.3:23 should be translated as 192.1.10.5:23

ip nat inside source static tcp 192.168.4.3 23 192.1.10.5 23 extendable
ip nat inside source static udp 192.168.4.2 53 192.1.10.5 53 extendable
ip nat inside source static tcp 192.168.4.1 80 192.1.10.5 80 extendable

++++++++++++++++++++++++++++++++++++++
Multicast-Routing
++++++++++++++++++++++++++++++++++++++

******************************
Lab - 5 - PIM Dense Mode
******************************

-----
R1
-----

ip multicast-routing
!
interface Loopback0
 ip pim dense-mode
 ip igmp join-group 239.1.2.3
 ip igmp join-group 239.10.10.10
!
interface E0/0
 ip pim dense-mode

-----
R2
-----

ip multicast-routing
!
interface Loopback0
 ip pim dense-mode
 ip igmp join-group 239.1.2.3
 ip igmp join-group 239.10.10.10
!
interface E0/0
 ip pim dense-mode
!
interface E0/1
 ip pim dense-mode

-----
R3
-----

ip multicast-routing
!
interface Loopback0
 ip pim dense-mode
 ip igmp join-group 239.1.2.3
!
interface E0/1
 ip pim dense-mode

***************************************
Lab - 6 - PIM Sparse Mode - Static RP
***************************************

-----
R1
-----

interface Loopback0
 ip pim sparse-mode
!
interface E0/0
 ip pim sparse-mode
!
ip pim rp-address 2.2.2.2

-----
R2
-----

interface Loopback0
 ip pim sparse-mode
!
interface E0/0
 ip pim sparse-mode
!
interface E0/1
 ip pim sparse-mode
!
ip pim rp-address 2.2.2.2

-----
R3
-----

interface Loopback0
 ip pim sparse-mode
!
interface E0/1
 ip pim sparse-mode
!
ip pim rp-address 2.2.2.2

*******************************************************
Lab - 7 - PIM Sparse Mode - Group Specific Static RP
*******************************************************

-----
R1
-----

access-list 1 permit host 239.1.2.3
access-list 2 permit host 239.10.10.10

no ip pim rp-address 2.2.2.2
ip pim rp-address 1.1.1.1 2
ip pim rp-address 2.2.2.2 1

-----
R2
-----

access-list 1 permit host 239.1.2.3
access-list 2 permit host 239.10.10.10

no ip pim rp-address 2.2.2.2
ip pim rp-address 1.1.1.1 2
ip pim rp-address 2.2.2.2 1

-----
R3
-----

access-list 1 permit host 239.1.2.3
access-list 2 permit host 239.10.10.10

no ip pim rp-address 2.2.2.2
ip pim rp-address 1.1.1.1 2
ip pim rp-address 2.2.2.2 1

***************************************************************
Lab - 8 - PIM Sparse Mode - Sparse-Dense-Mode (Fallback Dense)
***************************************************************

-----
R1
-----

interface Loopback0
 ip pim sparse-dense-mode
!
interface E0/0
 ip pim sparse-dense-mode

-----
R2
-----

interface Loopback0
 ip pim sparse-dense-mode
 ip igmp join-group 239.1.1.1
!
interface E0/0
 ip pim sparse-dense-mode
!
interface E0/1
 ip pim sparse-dense-mode

-----
R3
-----

interface Loopback0
 ip pim sparse-dense-mode
 ip igmp join-group 239.1.1.1
!
interface E0/1
 ip pim sparse-dense-mode

*******************************************************
Lab - 9 - PIM Sparse Mode - Auto RP
*******************************************************

-----
R1
-----

no ip pim rp-address 1.1.1.1 2
no ip pim rp-address 2.2.2.2 1
!
ip pim send-rp-announce loopback0 scope 6 

-----
R2
-----

no ip pim rp-address 1.1.1.1 2
no ip pim rp-address 2.2.2.2 1
!
ip pim send-rp-announce loopback0 scope 6
ip pim send-rp-discovery loopback 0 scope 6
 
-----
R3
-----

no ip pim rp-address 1.1.1.1 2
no ip pim rp-address 2.2.2.2 1
!
ip pim send-rp-announce loopback0 scope 6

*******************************************************
Lab - 10 - PIM Sparse Mode - BSR
*******************************************************

-----
R1
-----

no ip pim send-rp-announce loopback0 scope 6
!
ip pim rp-candidate loopback0  priority 20

-----
R2
-----

no ip pim send-rp-announce loopback0 scope 6 
no ip pim send-rp-discovery loopback 0 scope 6
!
ip pim rp-candidate loopback0  priority 25
ip pim bsr-candidate loopback0
 
-----
R3
-----

no ip pim send-rp-announce loopback0 scope 6 
!
ip pim rp-candidate loopback0  priority 15

*******************************************************
Lab - 11 - PIM Sparse Mode with MSDP
*******************************************************

Requirement: Configure R3 as the RP for R1, R2 & R3. Configure R4 as the RP for R4, R5 & R6.
Configure 239.1.2.3 on R1, R2 & R3. Configure 239.4.5.6 on R4, R5 & R6. 
Configure a MSDP relationship between the RP's to connect the 2 Multicast Domains to each other.

-----
R1
-----

ip multicast-routing
!
interface Loopback0
 ip pim sparse-mode
 ip igmp join-group 239.1.2.3
 ip igmp join-group 239.10.10.10
!
interface E0/0
 ip pim sparse-mode
!
ip pim rp-address 3.3.3.3
 
-----
R2
-----

ip multicast-routing
!
interface Loopback0
 ip pim sparse-mode
 ip igmp join-group 239.1.2.3
 ip igmp join-group 239.10.10.10
!
interface E0/0
 ip pim sparse-mode
!
interface E0/1
 ip pim sparse-mode
!
ip pim rp-address 3.3.3.3

-----
R3
-----

ip multicast-routing
!
interface Loopback0
 ip pim sparse-mode
 ip igmp join-group 239.1.2.3
 ip igmp join-group 239.10.10.10
!
interface E0/0
 ip pim sparse-mode
!
interface E0/1
 ip pim sparse-mode
!
ip pim rp-address 3.3.3.3
!
ip msdp peer 4.4.4.4 connect-source Loopback 0

-----
R4
-----

ip multicast-routing
!
interface Loopback0
 ip pim sparse-mode
 ip igmp join-group 239.4.5.6
 ip igmp join-group 239.10.10.10
!
interface E0/0
 ip pim sparse-mode
!
interface E0/1
 ip pim sparse-mode
!
ip pim rp-address 4.4.4.4
!
ip msdp peer 3.3.3.3 connect-source Loopback 0

-----
R5
-----

ip multicast-routing
!
interface Loopback0
 ip pim sparse-mode
 ip igmp join-group 239.4.5.6
 ip igmp join-group 239.10.10.10
!
interface E0/0
 ip pim sparse-mode
!
interface E0/1
 ip pim sparse-mode
!
ip pim rp-address 4.4.4.4


-----
R6
-----

ip multicast-routing
!
interface Loopback0
 ip pim sparse-mode
 ip igmp join-group 239.4.5.6
 ip igmp join-group 239.10.10.10
!
interface E0/0
 ip pim sparse-mode
!
ip pim rp-address 4.4.4.4


